Intel

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

ปัญหาสำคัญคือแม้ฮาร์ดแวร์จะรุดหน้าไปอย่างมาก อย่างที่เราเห็นซีพียูใหม่ๆ ออกมาเรื่อยๆ แต่ซอฟต์แวร์กลับไม่สามารถตามไปได้ เช่นเกมที่มักใช้ซีพียูเพียงคอร์เดียวเสมอๆ หรือซอฟต์แวร์ดนตรีที่กลับไม่ได้ใช้ความสามารถในประมวลผลแบบเวคเตอร์ในซีพียู โดยผู้ผลิตซอฟต์แวร์กลับไปพึ่งกับการออกแบบใหม่ๆ ที่เร่งความเร็วหน่วยประมวลผลทั่วไป (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 ตัว

Hiring! บริษัทที่น่าสนใจ

Carmen Software company cover
Carmen Software
Hotel Financial Solutions
Next Innovation (Thailand) Co., Ltd. company cover
Next Innovation (Thailand) Co., Ltd.
We are web design with consulting & engineering services driven the future stronger and flexibility.
KKP Dime company cover
KKP Dime
KKP Dime บริษัทในเครือเกียรตินาคินภัทร
Kiatnakin Phatra Financial Group company cover
Kiatnakin Phatra Financial Group
Financial Service
Fastwork Technologies company cover
Fastwork Technologies
Fastwork.co เว็บไซต์ที่รวบรวม ฟรีแลนซ์ มืออาชีพจากหลากหลายสายงานไว้ในที่เดียวกัน
Thoughtworks Thailand company cover
Thoughtworks Thailand
Thoughtworks เป็นบริษัทที่ปรึกษาด้านเทคโนโยลีระดับโลกที่คว้า Great Place to Work 3 ปีซ้อน
Iron Software company cover
Iron Software
Iron Software is an American company providing a suite of .NET libraries by engineer for engineers.
CLEVERSE company cover
CLEVERSE
Cleverse is a Venture Builder. Our team builds several tech companies.
Nipa Cloud company cover
Nipa Cloud
#1 OpenStack cloud provider in Thailand with our own data center and software platform.
Bangmod Enterprise company cover
Bangmod Enterprise
The leader in Cloud Server and Hosting in Thailand.
CIMB THAI Bank company cover
CIMB THAI Bank
MOVING FORWARD WITH YOU - CIMB is the leading ASEAN Bank
Bangkok Bank company cover
Bangkok Bank
Bangkok Bank is one of Southeast Asia's largest regional banks, a market leader in business banking
MuvMi (Urban Mobility Tech Co.,Ltd.) company cover
MuvMi (Urban Mobility Tech Co.,Ltd.)
Shape the future of urban mobility towards affordable, clean, and safe solutions
T.N. Digital Solution Co., Ltd. company cover
T.N. Digital Solution Co., Ltd.
TNDS has been involving in every first move of banking’s major digital transformation.
KBTG - KASIKORN Business-Technology Group company cover
KBTG - KASIKORN Business-Technology Group
KBTG - "The Technology Company for Digital Business Innovation"
Siam Commercial Bank Public Company Limited company cover
Siam Commercial Bank Public Company Limited
"Let's start a brighter career future together"
Icon Framework co.,Ltd. company cover
Icon Framework co.,Ltd.
Global Standard Platform for Real Estate แพลตฟอร์มสำหรับธุรกิจอสังหาริมทรัพย์ครบวงจร มาตรฐานระดับโลก
REFINITIV company cover
REFINITIV
The Financial and Risk business of Thomson Reuters is now Refinitiv
H LAB company cover
H LAB
Re-engineering healthcare systems through intelligent platforms and system design.
The Gang Technology Co., Ltd. company cover
The Gang Technology Co., Ltd.
We're a Digital Agency that helps our customers transform their business into digital with ease.
LTMH company cover
LTMH
LTMH มุ่งเน้นการพัฒนาผลิตภัณฑ์ที่สามารถช่วยพันธมิตรของเราให้บรรลุเป้าหมาย
Seven Peaks company cover
Seven Peaks
We Drive Digital Transformation
Wisesight (Thailand) Co., Ltd. company cover
Wisesight (Thailand) Co., Ltd.
The Best Choice For Handling Social Media · High Expertise in Social Data · Most Advanced and Secure
MOLOG Tech company cover
MOLOG Tech
We are Modern Logistic Platform, Specialize in WMS, OMS and TMS.
Data Wow Co.,Ltd company cover
Data Wow Co.,Ltd
We enable our clients to realize increased productivity by solving their most complex issues by Data
LINE Company Thailand company cover
LINE Company Thailand
LINE, the world's hottest mobile messaging platform, offers free text and voice messaging + Call
LINE MAN Wongnai company cover
LINE MAN Wongnai
Join our journey to becoming No.1 food platform in Thailand

artiya4u Wed, 26/01/2011 - 08:29

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

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

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

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

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

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

  1. ถ้าเป็นตัว concurrency และ power นี่เป็นกระแสของโลกครับ ไม่ว่าใช้ซีพียูตระกูลไหนๆ คงหนีไม่พ้น
  2. พวก media นี่จริงๆ ชุดคำสั่งมีการใช้งานเหมือนๆ กันในซีพียู X86 หลายตระกูลอยู่แล้วครับเช่น SSE ก็มีทั้ง Intel/AMD (เข้าใจว่า Via ก็มีแต่ไม่แน่ใจ) และซอฟต์แวร์ก็ยังรันได้บนซีพียูที่ไม่มีคำสั่งพวกนี้อยู่ดี แค่ใช้คำสั่งมาตรฐานที่ช้ากว่า

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

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