นากกายสีมิ้นต์มองเลนขนานหลายแถวบนโต๊ะมิ้นต์สว่าง

JEP 537: Vector API รอบที่สิบสองใน JDK 27

น้องกายEngineering

อยากเขียน SIMD ใน Java ให้คอมไพล์ลงคำสั่งเวกเตอร์ของซีพียูจริง ๆ ไม่ใช่แค่หวัง auto-vectorizer — นั่นคือที่มาของ Vector API ครับ

JEP 537 สถานะ Closed / Delivered ใน JDK 27 เป็น incubating API รอบที่สิบสอง โดย ไม่เปลี่ยน API จากรอบก่อน และอัปเดตไลบรารี SLEEF สำหรับอินทรินซิกคณิตศาสตร์บน ARM/RISC-V จาก 3.6.1 เป็น 3.9.0

สิ่งที่ควรรู้ก่อนใช้

  • ยังเป็น incubating — ต้องเปิดโมดูล incubator ตามเอกสารของรุ่น
  • เป้าหมายระยะยาวคือรอฟีเจอร์จาก Project Valhalla แล้วค่อยเลื่อนเป็น preview
  • เหมาะกับงานที่ต้องการเวกเตอร์ชัดเจน เช่น เส้นทางคำนวณที่ auto-vectorizer จับยาก

Recap

  • อ่าน openjdk.org/jeps/537 ก่อนพึ่งในโปรดักชัน
  • เทียบผลกับสเกลาร์บนฮาร์ดแวร์เป้าหมาย
  • ติดตามรอบ incubate ถัดไปถ้ายังไม่ขึ้น preview