Tags:
Node Thumbnail

ความเปลี่ยนแปลงของโลกแห่งการประมวลผลในยุคหลังนี้มีหลายอย่างที่เปลี่ยนไปจากเดิมที่เราต้องการให้ซอฟต์แวร์ทำงานเร็วที่สุดโดยไม่ต้องสนใจองค์ประกอบอื่นๆ เช่นการกระจายงานไปยังหลายๆ ซีพียู, การประหยัดพลังงาน, หรือการอาศัยฮาร์ดแวร์เฉพาะทางในซีพียูที่ช่วยขยายความสามารถของซอฟต์แวร์ให้รับโหลดได้มากกว่าเดิม

ปัญหาสำคัญคือแม้ฮาร์ดแวร์จะรุดหน้าไปอย่างมาก อย่างที่เราเห็นซีพียูใหม่ๆ ออกมาเรื่อยๆ แต่ซอฟต์แวร์กลับไม่สามารถตามไปได้ เช่นเกมที่มักใช้ซีพียูเพียงคอร์เดียวเสมอๆ หรือซอฟต์แวร์ดนตรีที่กลับไม่ได้ใช้ความสามารถในประมวลผลแบบเวคเตอร์ในซีพียู โดยผู้ผลิตซอฟต์แวร์กลับไปพึ่งกับการออกแบบใหม่ๆ ที่เร่งความเร็วหน่วยประมวลผลทั่วไป (General Computing) ที่นับวันจะมีพัฒนาการที่ช้าลงเรื่อยๆ จากข้อจำกัดหลายๆ อย่าง เช่นสัญญาณนาฬิกาของซีพียูที่ไม่สามารถเร่งขึ้นไปได้มากกว่านี้, หรือต้นทุนในการผลิตซีพียูคอร์เดียวที่มีประสิทธิภาพสูงที่แพงกว่าซีพียูหลายคอร์, ตลอดจนพลังงานต่องานที่ได้รับ

อินเทลเองก็ทราบปัญหานี้ดีว่าโลกซอฟต์แวร์มีแรงจูงใจที่จะปรับปรุงซอฟต์แวร์ไปสู่การทำงานหลายคอร์ไม่มากนัก โดยซอฟต์แวร์จำนวนมากยังอาศัยการเพิ่มประสิทธิภาพด้วยการอัพเกรดฮาร์ดแวร์กันต่อไป ขณะที่โลกของพีซีถูกขยายออกไปจากเดสก์ทอปหรือเซิร์ฟเวอร์ไปสู่เน็ตบุ๊ก, แท็บเล็ต, หรือกระทั่งสมาร์ทโฟน การอาศัยหน่วยประมวลทั่วไปโดยไม่ใช้ความสามารถพิเศษอื่นๆ ของฮาร์ดแวร์จะส่งข้อเสียในระยะยาวคือตัวซอฟต์แวร์สร้างประสบการณ์ที่ไม่ดีให้กับผู้ใช้ เมื่อผู้ใช้ใช้งานบนเครื่องที่ไม่เร็วนักเช่นเน็ตบุ๊ก อีกทางหนึ่งซอฟต์แวร์เหล่านี้กลับลดคุณค่าของฮาร์ดแวร์ใหม่ๆ เพราะผู้ใช้ทั่วไปกลับไม่รู้สึกว่าเครื่องใหม่ที่เพิ่งซื้อมาเร็วกว่าเดิมมากนัก

ทางออกของอินเทลคือโครงการ Intel Software Partner Program (ISPP) ที่ชักชวนผู้ผลิตซอฟต์แวร์ต่างๆ มาปรับปรุง หรือพัฒนาสินค้าใหม่ๆ ให้รองรับเทคโนโลยีใหม่ๆ ให้มากยิ่งขึ้น โดยมีสิ่งจูงใจคืออินเทลจะช่วยทำตลาดสินค้า การได้ชื่อร่วมกับรายการพันธมิตรซอฟต์แวร์ของอินเทล, เข้าถึงแผนการวางตลาดสินค้าของอินเทลล่วงหน้า, สิทธิในการเข้าอบรมพิเศษต่างๆ ที่อินเทลจัดให้พันธมิตรจำนวนมาก

Software Assessment Tools

สิ่งจูงใจที่อินเทลมอบให้พันธมิตรซอฟต์แวร์นั้นแบ่งออกเป็นสองส่วนคือสิ่งที่ได้รับเมื่อเข้าร่วม ISPP กันสิ่งที่ได้รับหลังจากมีการปรับปรุงซอฟต์แวร์ใหม่ หรือออกซอฟต์แวร์ใหม่ที่มีรองรับฟีเจอร์ใหม่ๆ ของฮาร์ดแวร์ได้แล้ว

เนื่องจากซอฟต์แวร์จำนวนมากติดเงื่อนไขทางการค้าทำให้สามารถส่งมอบซอฟต์แวร์ไปให้อินเทลทดสอบได้ เช่นซอฟต์แวร์บางตัวยังไม่วางตลาด, หรือซอฟต์แวร์มีกระบวนการติดตั้งซับซ้อน กระบวนการตรวจสอบจึงเป็นการใช้ชุดเครื่องมือตรวจสอบของทางอินเทลที่เรียกว่า Software Assessment Tools มารันในเครื่องที่ติดตั้งซอฟต์แวร์ไว้แล้ว

เครืองมือในกลุ่มนี้มีทั้งหมด 5 ตัวด้วยกัน แบ่งออกไปตามฟีเจอร์ต่างๆ ของฮาร์ดแวร์ ได้แก่

  • Intel Concurrency Checker: สำหรับตรวจสอบความสามารถในการกระจายงานไปยังหลายซีพียู
  • Intel Graphic Checker: ตรวจสอบประสิทธิภาพด้านกราฟิกเมื่อใช้ชิปของอินเทลว่ายังมีประสิทธิภาพดีอยู่หรือไม่
  • Intel Media Checker: ซอฟต์แวร์ตัวนี้ไม่ได้ตรวจสอบการเข้าใช้งานฟีเจอร์ของซีพียูโดยตรง แต่ตรวจสอบว่าใช้ Intel Media SDK สำหรับการเข้าและถอดรหัสวีดีโอหรือไม่ โดย Intel Media SDK จะถูกออปติไมซ์ไว้ทำสำหรับชิปใหม่ๆ อยู่แล้ว
  • Intel Manageability Checker: ตรวจสอบการว่ามีการเข้าใช้งานฟีเจอร์ด้านการจัดการของแพลตฟอร์มของอินเทล ได้แก่ Intel AMT, และ Intel vPro
  • Intel Power Checker: ตรวจสอบการใช้พลังงานของแอพพลิเคชั่น โดยเฉพาะเมื่อซอฟต์แวร์อยู่ระหว่างการรองานใหม่เข้ามา และตรวจสอบว่าซอฟต์แวร์รับรู้ว่าเครื่องอยู่ในสถานะการใช้พลังงานแบบไหน (เช่นโน้ตบุ๊กกำลังทำงานอยู่บนแบตเตอรี่) และสามารถปรับการทำงานของซอฟต์แวร์ตามพลังงานได้หรือไม่

เครื่องมือทั้ง 5 นี้เป็นเครื่องมือเพื่อทดสอบและสร้างรายงานการตรวจสอบให้ขึ้นเป็นไฟล์รายงาน โดยพันธมิตรซอฟต์แวร์จะต้องส่งรายงานทดสอบนี้กลับไปยังอินเทลเพื่อขอรับรองว่าซอฟต์แวร์ได้ใช้ประสิทธิภาพของฮาร์ดแวร์ได้ดีจริง แต่ผลประโยชน์บางอย่างเช่นการสนับสนุนการตลาด, บทวิจัยแนวโน้มทางด้านไอทีงอินเทลจะเปิดให้ใช้งานทันทีหลังส่งผลทดสอบ

สำหรับเครื่องมือที่สำคัญที่สุดคงเป็น Intel Concurrency Checker ที่เราจะแนะนำในส่วนต่อไป

Intel Concurrency Checker

Intel Concurrency Checker เป็นซอฟต์แวร์เล็กๆ ที่ใช้ตรวจสอบความสามารถในการกระจายเธรดของซอฟต์แวร์ โดยตัวมันเองจะเข้าไปตรวจสอบการทำงานของซอฟต์แวร์ของเราเป็นช่วงเวลา 30 วินาที

upic.me

ตัวซอฟต์แวร์เป็นลักษณะของ Wizard จำนวน 4 หน้าเท่านั้น โดยเมื่อเริ่มซอฟต์แวร์ขึ้นมามันจะให้เรากรอกของมูลของซอฟต์แวร์ และให้เราเลือกว่าต้องการรันแอพพลิเคชั่นขึ้นใหม่เลยหรือไม่

upic.me

หากเราไม่ได้เลือกให้รันแอพลิเคชั่นขึ้นให้ หน้าจอจะให้เราเลือกจากรายการ process ของวินโดวส์

upic.me

จากนั้นจึงเป็นหน้าจอตรวจสอบซอฟต์แวร์ โดยเราต้องเตรียมซอฟต์แวร์ให้พร้อมในช่วงนี้ก่อนกด start โดยตัวตรวจสอบนี้จะขึ้นมาเดือนว่ากำลังสร้างไฟล์รายงานใหม่เตรียมให้เราส่งกลับไปยังอินเทล

upic.me

เมื่อตรวจสอบเสร็จแล้ว จะรายงานตัวเลขออกมาว่าแอพพลิเคชั่นของเรารองรับการทำงานแบบเธรดมากแค่ไหน โดยตัวเลขนี้จะทำไปรายงานแบบไม่ระบุตัวตนในสมาชิกโครงการ ISPP ด้วยกัน เพื่อแจ้งให้สมาชิกแต่ละคนทราบว่าแอพพลิเคชั่นได้รับการปรับแต่งมาดีเพียงใด

ส่งท้าย

การปรับแต่งในโครงการ ISPP นั้นถ้าเราติดตามข่าวของซีพียูมาเรื่อยๆ จะพบว่าการปรับแต่งเหล่านี้เรามักจะต้องทำอยู่แล้วในอนาคตอันใกล้ การเข้าร่วมโครงการ ISPP และน่าจะเป็นโอกาสที่ดีที่เราจะปรับแต่งซอฟต์แวร์ให้รองรับอนาคตได้ดียิ่งขึ้น

บทความในชุด Intel Software Partner Program ยังมีบทความต่อไป เป็นการสัมภาษณ์บริษัทที่เข้าเป็นโครงการ ISPP มาก่อนและได้ประโยชน์จากโครงการนี้ สำหรับผู้ที่ต้องการข้อมูลเพิ่มเติม สามารถเข้าไปที่หน้า Fan Page ของโครงการได้ ตั้งแต่วันนี้ถึงวันที่ 7 ก.พ. นี้คนที่กดเป็นแฟนกับหน้าโครงการและแจ้งว่าทราบมาจาก Blognone จะมีโอกาสได้รับเสื้อ Intel Software Partner จำนวน 5 ตัว

Get latest news from Blognone

Comments

By: artiya4u
AndroidUbuntu
on 26 January 2011 - 08:29 #253788
artiya4u's picture

ไม่มีใคร เขาเขียนโปรแกรมตามซีพียูได้บ่อยๆ หรอก รับประกันได้ไหมล่ะว่าถ้าสร้างซอฟต์แวร์สำหรับซีพียูรุ่นหนึ่งแล้ว จะสามารถใช้งานกับรุ่นอื่นได้อย่างมีประสิทธิภาพ ที่สำคัญจะเป็นการผูกขาดมากเกินไป(ความเห็นส่วนตัวนะ)

By: mibtrex on 26 January 2011 - 08:45 #253790 Reply to:253788
mibtrex's picture

เห็นด้วยครับ

Application ควรจะรันอยู่บน platform ซึ่ง platform ควรจะพัฒนาให้ใช้ความสามารถของ Hardware ได้เต็มที่ ไม่อย่างนั้นคนเขียน Application จะถูกจำกัดการใช้ Software ด้วย platform เดียว

น่าจะประกวดการสร้าง SDK มากกว่านะครับ โดยที่ใช้ Application ตัวเดียวกัน แล้วมาวัดกันว่า SDK ของใครดึงประสิทธิภาพของ Hardware ออกมาได้อย่างเต็มที่

By: dmitry
iPhoneWindows
on 26 January 2011 - 09:01 #253796 Reply to:253790

+1 ครับผม
เราน่าจะพัฒนา platform ให้เหมาะสมกับ CPU มากกว่าจะไปพัฒนา Application
แทนที่ละไปทำAppทีละตัว เราสามารถทำอะไรที่ได้ผลกับทุกๆ App ที่เขียนด้วย Platform นั้นๆน่าจะดีกว่าเยอะเลย
แต่ผมก็สงสัยอยู่เหมือนกันนะครับว่า ถ้าพัฒนา Platform ให้รองรับ CPU ใหม่ๆแล้ว
App ที่เขียนๆไว้จะต้องแก้ไข Code ตามไปด้วยหรือเปล่า ผมเกรงว่ามันจะเป็น โดมิโน่ กันไปเรื่อยๆ

By: mibtrex on 26 January 2011 - 09:21 #253800 Reply to:253796
mibtrex's picture

Platform พี่พัฒนาต่อจากของเดิม ถ้ามีการแก้ไข Application ไม่จำเป็นต้องเปลี่ยนครับ
เพราะ Application คุยกับ platform ผ่าน API ซึ่ง API ของ version ใหม่ๆก็มีรูปแบบการใช้งานเหมือนเดิม ยกเว้นจะเพิ่ม API เข้ามา (ลองนึกถึง JAVA ครับ เปลี่ยนหลาย version แต่ Software เอามาใช้กับ version ใหม่ๆได้อยู่)

By: lew
FounderJusci's WriterMEconomicsAndroid
on 26 January 2011 - 10:07 #253813 Reply to:253788
lew's picture
  1. ถ้าเป็นตัว concurrency และ power นี่เป็นกระแสของโลกครับ ไม่ว่าใช้ซีพียูตระกูลไหนๆ คงหนีไม่พ้น
  2. พวก media นี่จริงๆ ชุดคำสั่งมีการใช้งานเหมือนๆ กันในซีพียู X86 หลายตระกูลอยู่แล้วครับเช่น SSE ก็มีทั้ง Intel/AMD (เข้าใจว่า Via ก็มีแต่ไม่แน่ใจ) และซอฟต์แวร์ก็ยังรันได้บนซีพียูที่ไม่มีคำสั่งพวกนี้อยู่ดี แค่ใช้คำสั่งมาตรฐานที่ช้ากว่า

lewcpe.com, @wasonliw

By: iPomz
ContributorAndroidWindows
on 26 January 2011 - 09:31 #253802
iPomz's picture

ไม่ทราบว่าตรงนี้เป็นบั๊กของเวปหรือเปล่าครับ

http://www.blognone.com/user/advertorial

alt="images by uppicweb.com"

By: lew
FounderJusci's WriterMEconomicsAndroid
on 26 January 2011 - 10:09 #253817 Reply to:253802
lew's picture

บั๊กครับ กำลังหาทางแก้อยู่


lewcpe.com, @wasonliw

By: TeamKiller
ContributoriPhone
on 26 January 2011 - 10:10 #253818 Reply to:253802
TeamKiller's picture

ผมก็เป็นอะครับ หน้า home ก็ขึ้น แต่นิดเดียว หน้า reply ก็ขึ้น

By: giogio
Android
on 26 January 2011 - 10:10 #253820
giogio's picture

advertising theme สวยงามดีครับ

By: iStyle
ContributoriPhoneAndroidSymbian
on 26 January 2011 - 10:38 #253829
iStyle's picture

ผมเข้ามาเจอแต่คอมเมนต์ งงเลย-*-


May the Force Close be with you. || @nuttyi

By: vaLVE
iPhoneWindowsIn Love
on 26 January 2011 - 10:46 #253832
vaLVE's picture

ปรับโฆษณาเป็นสีใหม่ goood ครับ
เตะตามาก ๆ ต่อไปนี้ดูแล้วเข้าใจเลยว่าเป็นโฆษณา

By: 9rockky
AndroidIn Love
on 26 January 2011 - 19:34 #253966

ชอบๆ สีสวยดี

เกี่ยวกับข่าวไหม

By: chalet16
ContributorAndroidUbuntuWindows
on 26 January 2011 - 22:01 #254016

"เนื่องจากซอฟต์แวร์จำนวนมากติดเงื่อนไขทางการค้าทำให้สามารถส่งมอบซอฟต์แวร์ไปให้อินเทลทดสอบได้ เช่นซอฟต์แวร์ บางตัวยังไม่วางตลาด"

ต้องมีคำว่า ไม่ ด้วยหรือเปล่าครับฟังดูงงๆ