FastFlow for Mac
| เวอร์ชัน | 2.0.0 |
|---|---|
| สำนักพิมพ์ | Computer Science Department |
| วันที่วางจำหน่าย | 30 ธ.ค. 2012 |
| วันที่เพิ่ม | 30 ธ.ค. 2012 |
| ข้อกำหนดระบบปฏิบัติการ | Mac OS X 10.4 PPC, Mac OS X 10.5 PPC, Mac OS X 10.5, Mac OS X 10.8, Macintosh, Mac OS X 10.4, Mac OS X 10.6, Mac OS X 10.4 Intel, Mac OS X 10.7, Mac OS X 10.5 Intel |
| ข้อกำหนด | Multicore and distributed platforms. Also working on Linux. |
| ดาวน์โหลดทั้งหมด | 127 |
| ราคา | Free |
คำอธิบาย
FastFlow เป็นเฟรมเวิร์กการเขียนโปรแกรมแบบขนาน C++ ที่มุ่งลดความซับซ้อนของการพัฒนาแอปพลิเคชันที่มีประสิทธิภาพสำหรับแพลตฟอร์มแบบมัลติคอร์ วิสัยทัศน์ที่สำคัญของ FastFlow คือความง่ายในการพัฒนาและประสิทธิภาพรันไทม์สามารถทำได้โดยการเพิ่มระดับนามธรรมของขั้นตอนการออกแบบ ซึ่งจะทำให้นักพัฒนามีชุดรูปแบบการเขียนโปรแกรมแบบคู่ขนานที่เหมาะสม ซึ่งสามารถคอมไพล์บนแพลตฟอร์มเป้าหมายได้อย่างมีประสิทธิภาพ
FastFlow ได้รับการออกแบบตามแนวคิดเป็นสแต็กของเลเยอร์ที่ค่อยๆ ย่อความขนานของหน่วยความจำที่ใช้ร่วมกันในระดับคอร์ จนถึงคำจำกัดความของโครงสร้างการเขียนโปรแกรมที่มีประโยชน์ซึ่งสนับสนุนการโปรแกรมแบบขนานที่มีโครงสร้างบนหน่วยความจำที่ใช้ร่วมกันแบบมัลติคอร์และสถาปัตยกรรมหลายคอร์และคลัสเตอร์ (ดู http://di.unito.it/fastflow )
สถาปัตยกรรมเหล่านี้รวมถึงสินค้าโภคภัณฑ์ ระบบมัลติคอร์ที่เป็นเนื้อเดียวกัน เช่น Intel core, AMD K10 เป็นต้น FastFlow รองรับการสตรีมขนานกันตั้งแต่เนทีฟ เนื่องจากใช้รูปแบบการขนานกันเป็นกราฟการไหลของข้อมูล ซึ่งเรียกว่าเครือข่ายสตรีมมิง
การสนับสนุนรันไทม์ของเฟรมเวิร์ก FastFlow ช่วยให้สามารถใช้งานคิว FIFO แบบ Single-Producer-Single-Consumer (SPSC) ได้อย่างมีประสิทธิภาพ คิว FastFlow SPSC ไม่มีการล็อก ไม่ต้องรอ และไม่ใช้การดำเนินการที่เชื่อมต่อกัน คิว SPSC ถูกใช้เป็นหลักเป็นกลไกการซิงโครไนซ์สำหรับพอยน์เตอร์หน่วยความจำในแบบผู้บริโภค-ผู้ผลิต ระดับถัดไปขยายคิวแบบหนึ่งต่อหนึ่งไปยังการซิงโครไนซ์แบบหลายต่อหลายและโฟลว์ข้อมูล ซึ่งดำเนินการโดยใช้เฉพาะคิว SPSC และเธรดผู้ชี้ขาดเท่านั้น จึงให้เครือข่ายการสตรีมโดยอำเภอใจที่ไม่ต้องล็อกซึ่งต้องการอุปสรรคด้านหน่วยความจำเพียงเล็กน้อยหรือไม่มีเลย และ ทำให้แคชใช้ไม่ได้เล็กน้อย
ชั้นบน เช่น การเขียนโปรแกรมระดับสูง ให้กรอบการเขียนโปรแกรมตามรูปแบบคู่ขนาน โดยเฉพาะอย่างยิ่ง FastFlow มีรูปแบบ FARM, FARM-WITH-FEEDBACK (เช่น D&C), PIPELINE, MAP และ REDUCE และสนับสนุนการซ้อนและการจัดองค์ประกอบตามอำเภอใจ ชุดรูปแบบ FastFlow สามารถขยายเพิ่มเติมได้โดยการสร้างเทมเพลต C++ ใหม่