FastFlow for Mac
| גִרְסָה | 2.0.0 |
|---|---|
| מוֹצִיא לָאוֹר | Computer Science Department |
| תאריך הוצאה | 30 בדצמ׳ 2012 |
| תאריך הוסף | 30 בדצמ׳ 2012 |
| דרישות Os | 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 של יצרן יחיד-צרכן יחיד (SPSC). תורי FastFlow SPSC הם ללא נעילה, ללא המתנה ואינם משתמשים בפעולות שלובות. תור SPSC משמש בעיקר כמנגנון סנכרון עבור מצביעי זיכרון באופן צרכני-יצרני. השכבה הבאה מרחיבה תורים אחד לאחד לסנכרון ותזרימי נתונים רבים לרבים, המיושמים רק באמצעות תורי SPSC ופתילי בוררים, ובכך מספקים רשתות סטרימינג שרירותיות נטולות נעילה הדורשות מעט מחסומי זיכרון או ללא מחסומי זיכרון, וכן לכן פסילות מטמון מעטות.
השכבה העליונה, כלומר תכנות ברמה גבוהה, מספקת מסגרת תכנות המבוססת על תבניות מקבילות. בפרט, FastFlow מספקת דפוסי FARM, FARM-WITH-FEEDBACK (כלומר D&C), PIPELINE, MAP ו-REDUCE, ותומכת בקינון ובהרכב השרירותיים שלהם. ניתן להרחיב עוד יותר את ערכת הדפוסים של FastFlow על ידי בניית תבניות C++ חדשות.