ประเด็นการถกเถียงเรื่อง "Flash กินซีพียู HTML5 ดีกว่า" ยังไม่จบไม่สิ้น คราวก่อน Adobe ขอเถียง "Flash ไม่ได้กินแรงซีพียูมากกว่า" แต่อาจมีสาวกบางค่ายเถียงว่า "เบนช์มาร์คไม่เป็นกลาง" (ฮา) คราวนี้ลองมาดูเบนช์มาร์คจากผู้ทดสอบอิสระ ที่ทดสอบด้วยวิดีโอเดียวกันบน YouTube ให้รู้กันไปเลย
ผู้ทดสอบคือคุณ Jan Ozer ใช้วิดีโอ Rosie tackles the new HP Z800 บน YouTube ซึ่งมีทั้งเวอร์ชันที่เป็น Flash และ HTML5 (ใช้ codec H.264) โดยทดสอบบนเบราว์เซอร์ 4 ตัวคือ Safari, Chrome, Firefox, IE ทั้งบนแมคและวินโดวส์ ในกรณีของ Flash นั้นใช้ทั้ง Flash Player 10.0 และ 10.1
การทดสอบครั้งนี้เขาดูอัตราการใช้งานซีพียูระหว่างเล่นวิดีโอ ใช้คอมพิวเตอร์อีกเครื่องเป็นตัววัด และวัดทั้งหมด 29 ครั้งตลอดการเล่นวิดีโอ จากนั้นจึงนำมาหาค่าเฉลี่ย อ่านวิธีการทดสอบอย่างละเอียดได้จากลิงก์ที่มา
เนื่องจาก YouTube ภาค HTML5 ใช้ codec H.264 ซึ่งมีแค่ Safari กับ Chrome เท่านั้นที่รองรับ (จริงๆ แล้วเฉพาะ Safari รุ่นบนแมคด้วย)
ผลการทดสอบบนแมค
สรุปว่า Chrome บนแมคนั้นยังมีปัญหาด้านประสิทธิภาพ ไม่ว่าจะใช้อะไรเล่นวิดีโอ ส่วนเบราว์เซอร์ที่ดีที่สุดคือ Safari โดยเฉพาะเล่น HTML5 กินซีพียูเพียง 12.39% เท่านั้น
บน Safari นั้นเห็นชัดเจนว่า วิดีโอตัวเดียวกัน ใช้ HTML5 เล่นแล้วดีกว่าเกือบสามเท่าตัว ในขณะที่ Chrome แทบไม่ต่างกันระหว่างเทคโนโลยีสองตัว
ผมไม่ได้ลงตัวเลขของ Flash 10.0 ด้วย ตามไปอ่านกันเอง แต่บน Safari นั้น Flash 10.1 ดีกว่า 14% ในขณะที่บน Firefox กลับแย่กว่าเดิม 5%
คนของ Adobe ให้ความเห็นว่า Flash 10.1 บน Safari นั้นใช้ Core Animation ทำให้ประสิทธิภาพดีขึ้น ในขณะที่ Firefox นั้นแย่ลง เพราะ Flash ใช้ Quartz 2D แทน QuickDraw เดิมในการวาดหน้าจอ อาจแปลว่าระบบใหม่ยังไม่เข้าที่มากนัก
ผลการทดสอบบนวินโดวส์
บนวินโดวส์นั้น Flash 10.1 ดีกว่า Flash 10.0 มากบนทุกเบราว์เซอร์ กรณีของ Firefox นั้นประสิทธิภาพดีขึ้นถึง 73% (เดิมกินซีพียู 22% ลงมาเหลือ 6%)
ส่วนการเทียบ HTML5 vs Flash ทำได้บน Chrome เพียงตัวเดียวเท่านั้น ผลกลับกับบนแมค เพราะ Flash 10.1 บน Chrome ได้ประสิทธิภาพดีกว่า HTML5 บน Chrome ถึง 1.5 เท่า
คนของ Adobe อธิบายว่า การที่ Flash 10.1 บนวินโดวส์มีประสิทธิภาพดีขึ้นอย่างชัดเจน เป็นเพราะว่า Flash รุ่นวินโดวส์สามารถใช้ GPU ช่วยเร่งประสิทธิภาพได้ ในขณะที่บนแมคยังทำไม่ได้ เพราะแอปเปิลไม่อนุญาตให้ Adobe เข้าถึงความสามารถนี้
สรุปว่า
ที่มา - Streaming Learning Center, ReadWriteWeb
Comments
เพราะแอปเปิลไม่อนุญาตให้ Adobe เข้าถึงความสามารถนี้----> เอาแล้วไง สาเหตุที่แท้จริง
GPU บน Mac พัฒนาช้าจะตาย (เปลี่ยนอะไรก็ไม่ได้มากด้วย)
มันเป็นข้อเสียตามข้อจำกัดที่น่าเศร้าพอสมควร
บางทีเห็นคนเค้าเล่นเกมกันบน Win ก็แอบอิจฉาเหมือนกันนะ (ฮา-ฮา)
Apple มี API สำหรับให้โปรแกรมทั่วไปเรียกใช้งาน GPU ได้อัตโนมัติครับชื่อ OpenCL เป็นมาตราฐานของทางฝั่งแอปเปิ้ลทุกโปรแกรมใช้ตัวนี้ แต่ทาง ADOBE ไม่ยอมใช้ตัวนี้จะให้ทำ API ที่ทาง Adobe อยากจะใช้ให้
คนละเรื่องกันแล้วครับ API ที่ Flash(as plug-in) เรียกใช้ได้บน Mac มี 3 ตัวในตอนนี้และแต่ละ API นั้น browser จะต้องรองรับด้วยคือ CoreAnimation(Safari+Webkit nightlies), Quartz 2D(ทุกตัว), QuickDraw(ทุกตัว)
OpenCL เป็น framework ตัวหนึ่งซึ่งจะถูกเรียกใช้โดยโปรแกรม และไม่สามารถเรียกใช้งานโดย plug-in บน browser ได้ เอาเข้าจริงๆถึงเรียกใช้ OpenCL ได้ ผลก็คงไม่ต่างไปจาก CoreAnimation เพราะมันก็ไม่ใช่ GPU accelerated video decoding API อยู่ดี
และเรื่องนี้ก็ไม่ได้มีแต่ Adobe เพียงเจ้าเดียวที่บ่น Apple
Russia is just nazi who accuse the others for being nazi.
someone once said : ผมก็ด่าของผมอยู่นะ :)
แล้ว CoreVideo ล่ะครับ call จาก browser's plug-in ได้ไหม?
Core Animation เรียกใช้ Core Video ได้ครับ(ถ้าจะพูดให้ถูกคงต้องบอกว่าเป็นโมเดลส่วนหนึ่งของ Core Animation หรืออีกชื่อหนึ่งคือ QuartzCore.framework)
อย่างไรก็ตาม Core Video เป็นการทำงานในส่วน rendering(buffering, rendering, composition) เท่านั้น ไม่ได้เป็นการ decoding ซึ่งครับ
Russia is just nazi who accuse the others for being nazi.
someone once said : ผมก็ด่าของผมอยู่นะ :)
Thanks a lot!
คุณภาพวิดิโอ flash ดีกว่าด้วยนะครัีบ
10.1 ดีกว่า 10.0 พอสมควรเลยนะนี่
อคติทำให้คนรับเหตุผลด้านเดียว
ผลออกมาชัดเจนดีครับ
สรุปว่าเป็นเพราะสงครามระหว่างบริษัทซินะ
แสดงว่า CoreAnimation ให้เรียกใช้ GPU acceleration ได้ แต่ไม่ถึงขั้น GPU accelerated video decoding สินะ
Russia is just nazi who accuse the others for being nazi.
someone once said : ผมก็ด่าของผมอยู่นะ :)
จ๊อบส์ ที่กล่าวหาว่า Adobe ขี้เกียจ จะว่ายังไงล่ะครับ
เลิกกั๊ก API ดีกว่ามั้ง เพื่อผลประโยชน์แก่ชาวโลก ไม่เฉพาะ Adobe
ไม่เห็นว่าคนใช้ mac จะออกมาบ่นเลย
ถ้ามองโลกจาก Apple-centric การใช้ HTML5/Safari/Mac สำหรับ YouTube มันก็ดีพอนะครับ
แมคต้องการต้อนคนให้ไปไช้ HTML5 แบบที่ศาสดาเคยพูดไว้ อิอิ
0 ขำขำ นะครับ
ถ้า Adobe ออก OS สำหรับ Designer โดยเฉพาะเพื่อมาตี Apple คงจะสนุกดีนะครับ
ยังไงก็เชียร์ html5 แต่ในโลกความจริง flash ยังคงเป็นตัวหลักอยู่
แฟนพันธุ์แท้สตีฟจ็อบส์ | MacThai.com
เชียร์ mono
ส่วนตัวผมยังไม่ได้ลอง บนหมูทุบ แต่เคยเห็นภาพเปรียบเทียบว่าแฟลชยังแสดงผลได้สวยกว่า ตรงนี้คงต้องรอจนกว่า HTML5 จะได้มตารฐานกลาง
ปล.จะแขวะ "ใคร" เล่นกันเฉพาะในคอมเมนต์ก็พอมั๊งครับ ?
ปล.ไม่แน่ใจว่าเบนช์มาร์ค หรือคนนำเสนอเบนช์มาร์คกันแน่ ที่ไม่เป็นกลาง ?
ปล.mobile web น่าจะมี remember login นะครับ
อ๋อ... เลยรู้ที่มาที่ไป :)
แซวกันขำๆน่ะ
ถ้าไม่ดักเอาไว้ก่อน เราจะเจอปรากฎการณ์ "Opera เร็วที่สุด" แต่พอ benchmark ออกมาแล้วแพ้ ก็จะโวยวายว่า "ใช้จริงแล้วเร็วกว่า" น่ะครับ
ต่อจากข้างบนนิดนึง mobile web น่าจะมีแก้ไขคอมเมนต์ด้วยนะ แอบเสียดายเล็ก อยากเล่นมุกเบนช์มาร์คไม่เป็นกลาง หรือมาร์คไม่เป็นกลางต่ออีกอัน แต่ไม่อยากโพสต์ใหม่ :P
ผมไม่เป็นกลางต่อสาวก Opera ครับ
ผมว่าการโยนบาปไปให้ GPU มันไม่ค่อยถูกนะ
มันเหมือนกับว่านับวัน Flash ยิ่งซับซ้อนก็ยิ่งกินระบบ แต่แทนที่จะทำ codec ที่ดีขึ้น ดันต้องไปพึ่ง GPU แทนโดย adobe ไม่ต้องเหนื่อยมาก
ทีนี้มันก็จะกลายเป็นลูกโซ่เรื่อง hardware การกินไฟ ราคา ที่ไม่จบสิ้นเพราะคนเขียน Flash ก็เขียนใหญ่ขึ้นกินระบบขึ้นทุกวันเช่นกัน
สำหรับผมคำว่า Adobe ขี้เกียจ นะสมควรแล้วละ
แค่ซื้อการ์จอที่รองรับ DX หรือ Engine ใหม่ๆ ก็เบื่อแล้ว อย่าให้ถึงขั้นที่ว่าการ์ดรุ่นี้รองรับ Flash 11 เลย ....
มีความรุสึกว่าเปนสาวกแมค = =
มันก็จะว่า Adobe ผิดก็ไม่เชิง คนผลิตต้องการทำชิ้นงานออกมาให้สวยเด้งเตะตา ถูกใจลูกค้า ที่ต้องการทั้งถูก และเร็ว เครื่องมือมันทรงพลังทำงานยากๆได้ง่าย แต่ไม่เลือกฟีเจอร์ใช้งานอยากเหมาะสม และพอปั่นเสร็จหมาดๆก็รีบโยนออกไป ไม่นั่งอ็อปติไมซ์กันหรอก ถ้าลูกค้ารับได้ ไม่บนก็โอเค
ใครล่ะ อยากแสดงวิดิโอสวยๆคมกริบ ใครล่ะอยากได้อนิเมชั่นวี๊บๆ ใครล่ะอยากได้กึ่งโปร่งใส เสียง FM Quality ไม่เอา ต้องเสียงใสกิ๊ง แล้วคนจ่ายเงิน นั่งดูรึเปล่า เฮ้ นี่กินซีพียูไป 50% บนเครื่อง Intel Quad Core ไม่ได้ๆ ต้องเหลือ 10% เฟ้ย .... ไม่เคยเห็น
ปลูกอะไร ได้อย่างงั้นครับ
เขียนโปรแกรมให้ "รองรับ" การทำงานบน GPU เป็นคนขี้เกียจ
โอ้โห หาคนขี้เกียจอย่างนี้ได้ที่ไหนครับ ผมว่าใน Blogone Jobs หากันอยู่หลายคน
lewcpe.com, @wasonliw
ไม่อยากเป็นคนขี้เกียจเลย แต่ชอบ GPU นะขอขี้เกียจหน่อยละกัน
และอีกอย่างถ้า adobe สามารถทำได้ทุก platform จริงๆละก็ สนุกแน่นอน (แต่ๆอ่านคร่าวๆ แล้วคนที่พัฒนาโปรแกรมให้ทำงานบน mobile ด้วยต้อง optimize ขนาดหนัก เช่น กรุณาอย่าใช้ memory เกิน 50 mb) สู้ๆนะพวกขี้เกียจ
+1 ผมขี้เกียจแบบนี้ไม่เป็น แต่ก็อยากเป็นบ้างเหมือนกันนะครับ T-T
ผมอ่านคอมเมนต์ของคุณแล้ว ขอเปลี่ยนเป็น
นี่แหละเหตุผลที่ไม่เล่นเกม PC ... ใครมันจะไปอัพเกรดเครื่องตามเกมทัน ว่าแล้วไปเอา Galaga มาเล่นดีกว่า
แล้วจะพัฒนา hardware มาทำพรื้ออะไรล่ะน้องชาย
เค้าทำ hardware มาก็พอยังไงมันมันทำงานเร็วกว่า
"เหมือนมี BTS แล้วมาบอกว่า จะมาใช้ BTS ทำไม ทำไมไม่หาทางเดินให้เร็วกว่าเดิม ขี้เกียจนะเนี่ย"
ไม่เห็นด้วยกับคุณ animateex ครับ
เพราะ GPU ชื่อมันก็บอกแล้วครับว่าเกิดมาเพื่อทำงานด้าน Graphic โดยเฉพาะครับ
ใน GPU มีชุดคำสั่งเพื่อใช้ในงาน image processing อยู่แล้วครับ
แต่ CPU มันไม่มี ฉะนั้นเวลาจะใช้ CPU เพื่องาน image processing จะต้องเขียน library เพิ่มครับ
ทำให้ CPU ประมวลผลภาพได้ช้ากว่า GPU ครับ
ถ้าผมเป็น abobe ผมก็เลือกที่จะเขียนโปรแกรมประมวลผลโดยใช้ GPU ครับ
เพราะเขียนก็สั้นกว่า, ประสิทธิภาพก็ดีกว่า หรือเป็นแบบนี้คุณยังจะเลือก CPU ล่ะครับ?
การที่เราเลือกของสิ่งใดโดยไม่มี bias จะทำให้เราได้ของทีี่ดีที่แท้จริงนะครับ
ลืมนึกไปรึเปล่าว่า flash มันไม่ได้เอาไว้ดูวีดีโออย่างเดียวอะครับ
thin app กับ rich app มันต่างกัน
มันขึ้นอยู่กับว่าจะใช้งานอะไร ไม่มีอะไรที่ดีที่สุดหรือแทนกันได้หมดหรอก เหมือนสมองซีกซ้ายกับซีกขวาแหละ
สนุกสนานกันไป
+1
WE ARE THE 99%
ผมดูนี้ http://www.adobe.com/products/flashplayer/ แล้วรู้สึกว่า flash ดีกว่าที่ผมคิดอีกเยอะเลย แถมยังดึงพลังจาก GPU ได้แล้วด้วย
แอบเชียร์ HTML5 ให้ถึงฝั่งฝัน -3-
เสร็จเรื่อง video บน Flash Player แล้วคงไปกลับไปแก้ Flash(โปรแกรม) กันไม่ให้นักพัฒนาใช้ฟีเจอร์ต่างๆพร่ำเพรื่อด้วยนะอย่าลืม - -
แต่เห็นคุณ mr_tawan บอกว่า AS3 เร็วกว่า AS2 มาก แสดงว่าต้องให้คนเขียนโดยใช้ AS3 กันมากขึ้นสินะ
Russia is just nazi who accuse the others for being nazi.
someone once said : ผมก็ด่าของผมอยู่นะ :)
เร็วกว่าจริงจังครับ code loop 10000 ทุกอย่างเหมือนกัน ทั้ง code และ environment จะได้เวลาที่ต่างกันอย่างแรง
AS3 ~ 1ms
AS2 ~ 30ms
ตอนนี้ก็ยังงงว่าทำไม
เป็นเทคโนโลยีที่ถูกลืมครับ น่าสงสารไมโครซอฟท์เหมือนกัน (แต่ก็น่าจะยังดีกว่า JavaFX นะ)
ที่มหาลัยผมใช้ SilverLight ตั้งแต่งานเด็กปี ๒ จนถึงโปรเจค แต่ไม่ยักมี Flash สักงาน
ผมใช้ Technology ของ Adobe ครับ ใช้ Flex เป็นส่วนหนึ่งของ Senior Project ครับ
@mk ผมว่าโพสต์ข่าวเสร็จ รีบมาดักในคอมเมนต์แรกก็ไม่น่าถึงตายนะครับ ?
เอาเถอะครับ ยังไงผมก็อาจจะพูดเตือนพี่ไม่ได้นัก แต่ก็เก็บไปพิจารณาด้วยนะครับ ว่าแขวะตั้งแต่ในข่าว มันสมควรหรือไม่ แค่ย้ายมาแขวะในคอมเมนต์แทน จะตายไหม ?
ปล.ขอโทษที mobile web มัน reply comment ไม่ได้
ปล.ผมเองก็เคยพูดไว้บ่อยๆ แค่ว่า "ส่วนติดต่อผู้ใช้" ของ Opera ทำงานได้ไหลลื่นที่สุดแฮะ (ซึ่งส่วนนี้แหละ ที่ทำให้มีความรู้สึกว่า Opera เร็วกว่า)
ยังไงก็ขออภัยพี่ mk ด้วยครับ ที่ใช้คำ (ที่ดูแล้วน่าจะ) รุนแรง
คุณพูดกับผมแรง ผมไม่มีปัญหาหรอกครับ
แต่ที่ผมมีปัญหามากๆ คือ พวกที่มีผลการทดสอบที่เป็นวิทยาศาสตร์ออกมา แล้วไม่ยอมรับ อ้างโน่นนี่ เช่น การทดสอบไม่เป็นกลาง พอบอกให้ทำการทดสอบแบบ หรือแสดงข้อมูลที่ตัวเองคิดว่าเป็นกลางออกมา ก็ไม่ยอมทำ
คือผมก็พยายามบันทึกวิดีโอการใช้งานนะ (อย่างที่ผมบอกคือผมไม่ได้เทียบความเร็วเอ็นจิ้น แต่เทียบความเร็วของส่วนติดต่อผู้ใช้) แต่ว่าด้วยว่าเครื่องผมแก่ มันเลยกระตุกไปหมดทุกตัวเลย
มันไม่มีใครชนะใครหรอกครับ เพราะต่างคนต่างมีเหตุผลที่ยิ่งใหญ่ของตนเองกัน.. -*-
เชียร์ HTML5 เพื่ออนาคตที่สดใส่
Case HP Z800 เทพจริง ๆ ครับ
พูดเรื่องอื่นหน่อยสิ..
ผมว่าเคสของ Z800 มันออกแบบมาได้สุดยอดมากๆเลยนะ เท่ ถอดง่าย แน่นหนา อยากได้มั่งอะ ^^
Pitawat's Blog :: บล็อกผมเองครับ
เป็นอีก ๑ รายการที่คอมเม้นต์อ่านแล้วยาวมาก เพลินๆเหมือนอ่านเว็บดราม่าเลย