asm.js เข้าใกล้โค้ดแบบเนทีฟ, แย่สุดคือช้ากว่า 1.5 เท่าเทียบกับ clang

by lew
23 December 2013 - 09:58

ขณะที่ฝั่ง Chrome กำลังพัฒนา NaCl เพื่อการรันโค้ดแบบเนทีฟในเบราว์เซอร์ ทางฝั่ง Mozilla ผู้พัฒนาไฟร์ฟอกซ์นั้นหันไปพัฒนา asm.js มาตรฐานที่เน้นการออปติไมซ์บางส่วนของจาวาสคริปต์เพื่อให้คอมไพล์ภาษา C/C++ มาเป็น asm.js ได้ และรันได้ความเร็วใกล้เคียงเนทีฟ ตอนนีทาง Mozilla ก็ออกมาแถลงผลการปรับปรุงรอบล่าสุดว่าช้าที่สุดไม่เกิน 1.5 เท่าของโค้ดแบบเนทีฟจากคอมไพล์เลอร์ clang แล้ว

การเปรียบเทียบนี้เทียบโดยใช้ clang 3.2 เป็นฐาน และข้อมูลก็แสดงให้เห็นว่าที่จริงแล้ว GCC สามารถคอมไพล์ได้ประสิทธิภาพสูงกว่าในหลายกรณี ชุดทดสอบหลายชุดหากเทียบประสิทธิภาพโค้ดที่ได้กับ GCC แล้ว asm.js ก็ยังช้ากว่าเป็นเท่าตัวอยู่

ประสิทธิภาพที่ได้มาในรอบนี้มาจากการออปติไมซ์ float32 โดยยังไม่ได้เปิดฟีเจอร์นี้เป็นฟีเจอร์มาตรฐานใน emscripten คอมไพล์เลอร์สำหรับคอมไพล์โค้ดของ LLVM เป็นจาวาสคริปต์

ที่มา - Mozilla

Blognone Jobs Premium