Chapel

البرمجيات قطة:
Chapel
تفاصيل البرنامج:
الإصدار: 1.3.0 Pre-Alpha
تاريخ إيداع: 11 May 15
المطور: Cray Inc.
ترخيص: حرر
شعبية: 12

Rating: nan/5 (Total Votes: 0)

مصلى هو الجديدة لغة البرمجة المتوازية التي يجري تطويرها من قبل شركة كراي كجزء من برنامج إنتاجية عالية أنظمة الحاسبات أدى DARPA (HPCS). تم تصميم كنيسة صغيرة لتحسين إنتاجية مستخدمي الكمبيوتر الراقية في الوقت الذي يعمل أيضا بمثابة المحمولة نموذج البرمجة المتوازية التي يمكن استخدامها على مجموعات السلع أو أنظمة متعددة النوى سطح المكتب. الكنيسة تسعى لتحسين كبير في برمجة الحواسيب المتوازية على نطاق واسع في حين مطابقة أو الضرب على الأداء وقابلية نماذج البرمجة الحالية مثل MPI.
التطبيق مصلى يدعم نموذج تنفيذ مؤشرات عبر تجريدات رفيع المستوى لالتوازي البيانات، التوازي المهمة، التزامن، والتوازي متداخلة على & nbsp؛ مصلى في نوع لغة تمكن المستخدمين من تحديد والسبب حول وضع البيانات والمهام على العمارة المستهدفة من أجل لضبط لمحلة. الكنيسة تدعم المجاميع البيانات نظرة عالمية مع تطبيقات المعرفة من قبل المستخدم، والسماح عمليات على هياكل البيانات الموزعة أن يتم التعبير عنها بطريقة طبيعية. وعلى النقيض من العديد من اللغات الموازية السابقة على مستوى أعلى، فقد تم تصميم مصلى حول فلسفة multiresolution، مما يسمح للمستخدمين في البداية كتابة التعليمات البرمجية مجردة للغاية ومن ثم تدريجيا إضافة المزيد من التفاصيل حتى تكون أقرب إلى آلة كما تتطلب احتياجاتهم. مصلى يدعم إعادة استخدام رمز والنماذج الأولية السريعة عبر وجوه المنحى تصميم، نوع الاستدلال، وميزات للبرمجة عامة.
وقد تم تصميم الكنيسة من المبادئ الأولى بدلا من توسيع لغة القائمة. وهو منظم كتلة اللغة حتمية، مصممة لتكون سهلة لتعلم لمستخدمي C، C ++، فورتران، جافا، بيرل، ماتلاب، واللغات الأخرى الشعبية. بينما يبني كنيسة على المفاهيم وبناء جملة من العديد من اللغات السابقة، وتتأثر معالمه موازية بشكل مباشر من قبل ZPL، عالية الأداء فورتران (HPF)، وكراي MTA والتجارة؛ / كراي XMT والتجارة؛ ملحقات لC وفورتران

ما هو الجديد في هذا الإصدار:.

ويبرز (انظر أدناه للحصول على مزيد من التفاصيل)
انقسام "مواطنه" الكلمة الرئيسية في "بروك" (إجراءات) و "ايتر" (لiterators)
(انظر '$ CHPL_HOME / UTIL / تحويل-defs --help' للمساعدة تحديث رموز القائمة)
وأضاف توزيع "منسوخ" وتحسين توزيع "بلوك دوري '
(انظر ومثل؛ ستاندرد التوزيعات ومثل؛ في المواصفات وأمثلة / التمهيدي / distributions.chpl)
طبقات المضافة لغة واحدة مهمة للنانو ++ (BSC) وQthreads (سانديا)
(انظر وثيقة / README.tasks)
إعادة صياغة الرئيسية للدلالات نطاق وتنفيذ
(انظر ومثل؛ التغييرات الدلالي / التغييرات إلى مصلى اللغة ومثل؛ أدناه لمزيد من التفاصيل)
الدعم الأولي لأنواع المتطايرة: منطقي، الباحث، UINT، الحقيقي، ايماج
(انظر وثيقة / technotes / README.volatile)
دعم consts خارجي والطبقات (البنيات مؤشرات ل)
(انظر وثيقة / technotes / README.extern)
تقديم الدعم لتحسين التوازي بيانات عن كراي XMT
تحسينات واسعة لرموز عينة في الأمثلة / دليل
(انظر "رموز مثال" أدناه وأمثلة / اقرأني)
وأضاف معظم الأمثلة رمز من المواصفات إلى أمثلة جديد / دليل
(انظر الأمثلة / المواصفات / *)
وأضاف مذكرة تقنية واصفا خريطة نطاق اجهة المعرفة
(انظر وثيقة / technotes / README.dsi)
تحديثات واسعة النطاق لمواصفات اللغة
(انظر "الوثائق" أدناه)
عدة تحسينات على المهام وقت وطبقات الاتصالات
(انظر ومثل؛ مكتبة وقت تشغيل التغييرات ومثل؛ أدناه)
النحوية / التغييرات التسمية
انقسام "مواطنه" الكلمة الرئيسية في "بروك" (إجراءات) و "ايتر" (لiterators)
(انظر '$ CHPL_HOME / UTIL / تحويل-defs --help' للمساعدة تحديث رموز القائمة)
'الحساب' نطاقات / صفائف إلى "مستطيلة" نطاقات / المصفوفات التي سميت
واضاف لدعم العائمة الحرفية نقطة من النموذج "1.e ... '
(سابقا، فقط '1E ... "و" 1.0E ... "كانت مدعومة)
التغييرات الدلالي / التغييرات إلى مصلى اللغة
العديد من التحسينات إلى نطاقات (انظر "ميادين" الفصل في المواصفات اللغة):
وأضاف مفهوم المواءمة للإشارة إلى مودولو المواءمة | خطوة |
وأضاف عامل "محاذاة" والاستعلام إلى نطاقات لتحديد / محاذاة الاستعلام
(على سبيل المثال، "1..10 بنسبة 3 محاذاة 2 '= & GT؛' 2، 5، 8 'منذ 2 == 5 == 8، وزارة الدفاع 3)
تعريف == على نطاقات من حيث تسلسل صحيح أنها تولد
IDENT محددة (R1، R2) ليقل ما اذا R1 و R2 متطابقة غويا
تعريف '# ك "لك العلامة & lt؛ 0 بعد أن المعنى ومثل؛ عد من نهاية نطاق ومثل؛
وأضاف 'أولا'، 'آخر'، 'alignedLow، "أساليب alignedHigh" إلى نطاقات
(على سبيل المثال، "1..10 التي كتبها -2 '= & GT؛ الأول == 10، == الماضي 2، alignedLow = 2، alignedHigh = 10)
واضاف لدعم مجموعة متنوعة من الوظائف الاستعلام مجموعة جديدة
(على سبيل المثال، alignLow ()، hasFirst ()، hasLowBound ()، isAligned ()، boundsCheck () ...)
واضاف لدعم منطقي متقلبة، الباحث، UINT، حقيقية، وأنواع ايماج
(انظر وثيقة / technotes / README.volatile)
وأضاف الاختيار نهاية الملف إلى نوع الملف
(على سبيل المثال، "في حين! infile.eof ... ')
دعم إزالة لعلاج "العودة" في مكرر ك "العائد"
(على سبيل المثال، التغيير "فو ايتر () {عودة X؛} 'إلى' فو ايتر () {العائد س؛ العودة؛})
إضافة دعم لنماذج الرجوع دون الأول 'use' جي منهم
(على سبيل المثال، وحدة M1 {فار س ...} حدة M2 {... M1.x ...} الآن القانوني)
وأضاف استعلام callStackSize لنوع اللغة
(على سبيل المثال، "here.callStackSize 'إرجاع حجم مكدس المكالمة على لغة الحالية)
إزالة الفاصلة المنقوطة المطلوبة سابقا من نهاية الإعلانات التعداد
(على سبيل المثال، "الألوان التعداد {الأحمر والأزرق والأخضر} 'هو الآن القانوني، هناك حاجة سابقا'؛ ')
واضاف لدعم فاصلة زائدة واحدة في نهاية قوائم التعداد
(على سبيل المثال، "الألوان التعداد {الأحمر والأزرق والأخضر و} 'هو الآن القانوني)
دعم إزالتها ل+/- المشغلين على المجالات مستطيلة. استخدام ترجمة ()
الميزات نفذت حديثا
== تنفيذ /! = لمستطيلة الشكل، والنقابي، والمجالات متفرق
التوزيعات القياسية
وأضاف أول مشروع توزيع "منسوخ" لتخزين البيانات و مكررين
(انظر الأمثلة / التمهيدي / distributions.chpl)
تحسن "بلوك دائرى، كافية لتنفيذ HPCC PTRANS وHPL بشكل صحيح
(انظر الأمثلة / HPCC / ptrans.chpl، hpl.chpl؛ أمثلة / التمهيدي / distributions.chpl)
التكرار إزالتها في مواصفات iterators زعيم بين المجالات / المصفوفات
الوحدات النمطية القياسية
وأضاف INFINITY وNAN الثوابت إلى وحدة Math.chpl
(انظر "الرياضيات" تحت ومثل؛ ستاندرد حدات ومثل؛ في المواصفات اللغة)
وأضاف isinf () وisfinite () إجراءات الاختبار إلى وحدة Math.chpl
(انظر "الرياضيات" تحت ومثل؛ ستاندرد حدات ومثل؛ في المواصفات اللغة)
وأضاف نصف دزينة المزيد من الروتين إلى وحدة GMP.chpl
توثيق
وأضاف مذكرة تقنية جديدة واصفا خريطة نطاق اجهة المعرفة
(انظر وثيقة / technotes / README.dsi)
قدم العديد من التحسينات على مواصفات اللغة
مراجعات رئيسية للفصل المجالات لتحسين الوضوح / دقة
تحسين وموحد هيكل من السجلات والفصول فصول
مراجعات رئيسية إلى الفصل خرائط المجال لتحسين وضوح / دقة
اسمه رموز سبيل المثال لتوفير إشارة مرجعية إلى أمثلة / المواصفات / برامج
توضيح مشروعية التسمية / كسر / الاستمرار في حلقات متوازية
تحديث أوصاف قراءة [LN] / الكتابة [LN]
إصلاح بعض المشاكل في مجالات ملف الطلب
إخراجها مواصفات و'الكتاب' في اللثي
مختلف إصلاحات طفيفة من الأخطاء المطبعية / الأخطاء
تعريفات تحسين / أوصاف عدة مصطلحات
الوثائق المضافة للlocale.name
والعديد من التغييرات الأخرى ...
تحديث ثيقة مرجعية سريعة لتشمل GT def- &؛ بروك / تغيير ايتر، محاذاة المرجع.
أعيد كتابة / إعادة تنظيم README.extern لتوضيح التفسيرات وتقديم ما يصل إلى تاريخ
أضاف README اصفا البيان "المحلي" (وثيقة / technotes / README.local)
أضاف README تصف أنواع المتطايرة (وثيقة / technotes / README.volatile)
تحديث README.comm والتشخيص لذكر إحصاءات شوكة سريع
تحديث ملفات README مختلفة
رموز سبيل المثال
وضعت معظم الأمثلة رمز من المواصفات اللغة. إلى المواصفات الجديدة / الفرعي
تحسين الاشعال / الدليل:
وأضاف التمهيدي جديد لاستخدام الإجراءات (الاشعال / procedures.chpl)
وأضاف التمهيدي الأساسي للنطاقات (الاشعال / domains.chpl)
إعادة تسمية لغات التمهيدي لlocales.chpl وتحسينها
تحسين التمهيدي التوزيعات وأضاف رصف دوري ومنسوخ الاستخدامات
تحديث التمهيدي النطاق (الاشعال / range.chpl)
تحسين التمهيدي iterators (الاشعال / iterators.chpl)
تحسين التمهيدي تخفيضات (الاشعال / reductions.chpl)
وأضاف getCurrentTime () لالتمهيدي توقيت (الاشعال / timers.chpl)
الوصف المضافة للنوع الأسماء المستعارة وأنواع التهيئة للمتغيرات التمهيدي
(انظر الاشعال / variables.chpl)
تحسين الدليل HPCC / المقاييس
وأضاف النسخة الأولى من HPCC PTRANS إلى HPCC / الدليل (ptrans.chpl)
وأضاف نسخة أنظف من HPCC HPL إلى HPCC / الدليل (hpl.chpl)
إضافة متغيرات / الفرعي إلى أمثلة / HPCC لتظهر مناهج أخرى
وأضاف تيار promoted.chpl لإظهار اللجوء إلى تعزيز في العالم STREAM ثالوث
وأضاف RA-cleanloop.chpl لإظهار نظافة (ولكن حاليا أبطأ) RA النواة
تحسين أمثلة المستوى الأعلى:
إعادة تسمية القائمة ومثل؛ مرحبا، العالم ومثل؛ أمثلة تشير إلى أمر القراءة المنطقية
(انظر الأمثلة / مرحبا * .chpl)
البيانات المضافة بالتوازي البيانات وتوزيعها موازية مرحبا، أمثلة العالم
(انظر الأمثلة / hello3-datapar.chpl، أمثلة / hello4-datapar-dist.chpl)
وأضاف التعليقات إلى مختلف مرحبا، أمثلة العالم (أمثلة / مرحبا * .chpl)
تحديث كافة الأمثلة لدلالات اللغة الحالية
استخدام "بروك '/' ايتر 'بدلا من' صفر '
تحديث لتعكس دلالات مجموعة جديدة
منصة محددة ملاحظات
لكراي XT / كراي XE، وتحسين aprun وقاذفات برنامج تلفزيوني aprun-
(انظر ومثل، وتلاحظ ومثل قاذفة محددة؛ أدناه)
لكراي XMT، واضاف لدعم حلقات متوازية على نطاقات
لكراي XMT وأضاف جيل من noalias pragmas لفورال المتغيرات حلقة
واضاف لدعم MARENOSTRUM BSC بما في ذلك مستندات وقاذفة خاصة
(انظر وثيقة / منصات / README.marenostrum)
ملاحظات قاذفة محددة
وأضاف خيارات قاذفة محددة ل--help القدرة
تحسين نشر قوانين الأحوال الخروج من خلال إطلاق
قاذفات المتغيرة لدعم الأوامر (وليس على أساس النظام) على أساس عمال التنفيذ،
قاذفات جعل استخدام "فك ارتباط" بدلا من نظام ('RM') لإزالة الملفات المؤقتة
وأضاف قاذفة للMARENOSTRUM BSC ل
استخدام عدد أقل من الملفات المؤقتة لالتقاط إخراج الأوامر "نظام"
تحسينات قاذفة aprun:
وأضاف علم --cc لتحديد مهمة وحدة المعالجة المركزية ث / في عقدة
وأضاف علم -q لتشغيل قاذفة في الوضع الصامت
القدرة على التصحيح وأضاف عبر CHPL_LAUNCHER_DEBUG للحفاظ على الملفات TMP حول
برنامج تلفزيوني aprun-تحسينات قاذفة:
وأضاف علم --cc لتحديد مهمة وحدة المعالجة المركزية ث / في عقدة
القدرة على التصحيح وأضاف عبر CHPL_LAUNCHER_DEBUG للحفاظ على الملفات TMP حول
تنظيف الناتج للتخلص من بعض الطباعة الدخيلة
قاذفة قدم تدعم نظام تجاربنا
وأضاف --walltime والأعلام --queue لقاذفة كبدائل للالحياة الفطرية. فار.
مترجم التغييرات
جعل الطباعة مترجم صحيح '/' كاذبة 'للخروج في نوع التواقيع بدلا من 1/0
وأضاف التكوين المعلمة 'noRefCount "لتعطيل حساب مرجع (قد تسرب الذاكرة)
أعلام مترجم
وأضاف علم --print-callstack على اساس الخطأ لاظهار ما أدى إلى مكالمة سيئة
وأضاف علم-codegen -ما لا لتخطي الجيل رمز والمرحلة التي تربط بين
التوافقية التغييرات
واضاف لدعم خارجي ... C & مثل؛ الطبقات ومثل؛ (مؤشر إلى بنية أنواع)
واضاف لدعم consts خارجي (انظر README.extern)
تحسينات رسالة خطأ
يضاف تحذير اليتامى "استخدام" البيانات خارج وحدات أعلن
(على سبيل المثال، "استخدام M1، M2 حدة {} 'يجب أن يكون عادة" وحدة M2 {استخدام M1؛}')
رسالة الخطأ الذي تحليل الوقت استخدام معيار 'اسم الملف: lineno: "شكل
إنشاء رسالة خطأ للإشارة إلى اسم الفئة في الأسلوب الأساسي
(على سبيل المثال، "فئة C {مواطنه سم () {...}} 'يولد الآن رسالة خطأ)
علة المآزق / الشيكات الدلالي جديدة (لدلالات القديمة)
منع أنواع التكوين من يجري تعيين باستخدام وقت التنفيذ الأعلام سطر الأوامر
ثابت قدرة المترجم على التعامل مع النقابات مع عدم وجود الحقول
الثابتة التخفيضات minloc / maxloc للتعامل مع نطاقات فارغة / subranges القيم
إصلاح الخلل الذي تم تجاهله حجة 'المسار' لمنشئات ملف
جعل النقابات فارغة تعمل بشكل صحيح
قضية الثابتة تجاوز في شونكينغ تصل نطاقات للتوزيع / الموازاة
إصلاح الخلل التي تنطوي على دعم فارغة أنواع السجلات خارجي
إصلاح الخلل التي تنطوي على وظائف خارجي التي ترجع السجلات
إصلاح الخلل المتعلقة نسخ السجلات الخارجية
تنفيذ ثابتة من +/- المشغلين على النقابي / مجالات متفرقة
إصلاح الخلل المتعلق أسماء الوحدة النمطية المستندة إلى اسم الملف الذي يحتوي متعددة. في
رسائل الخطأ المضافة لتوسيع / ​​الخارجي / الداخلي في المجالات غير النظامية
وأضاف خطأ لمنشئات / destructors مع نوع إرجاع محدد
ثابت زوج من البق المتعلقة "بسرعة على 'الأمثل
وأضاف شيك ضد بناء الطبقات دون تحديد المجالات العامة
التغييرات التعبئة والتغليف
وأضاف تركيب كود تمييز لGNU مصدر الضوء
(انظر الخ / مصدر الضوء / اقرأني)
تحسين ايماكس تلوين الدعم لإصدار 22.x
(انظر الخ / ايماكس / اقرأني)
تحديثات فيم التلوين الجملة لتعكس الجديد "بروك" / كلمات "ايتر"
(انظر الخ / همة / اقرأني)
وأضاف نصي لتحويل 'استخدام' الرموز الموجودة مواطنه "إلى" ايتر '/' بروك "
(انظر $ CHPL_HOME / UTIL /-تحويل defs)
أمثلة multirealm إزالة والمستندات في الوقت الراهن
طرف ثالث البرمجيات التغييرات
تحديث GASNet إلى الإصدار 1.16.1
نسخ المضافة للنانو BSC في ++ وQthreads سانديا
(انظر طرف ثالث / اقرأني)
قدم بعد تثبيت الخطوة GASNet أن يغير مسارات مطلقة لقريب
PVM إزالتها في الوقت الحالي بسبب عدم الاستقرار
مكتبة وقت التشغيل التغييرات
طبقات المضافة لغة واحدة مهمة للنانو ++ (BSC) وQthreads (سانديا)
العديد من التحسينات على طبقة وقت التشغيل المهام:
وأضاف واجهة جديدة لديها chpl_main دعوة طبقة المهام ()
تغيرت وظيفة المهام التهيئة لاتخاذ سائط maxThreadsPerLocale / callStackSize
وأضاف القدرة الإنتاجية المهمة إلى واجهة الطبقة المهام
رمز تحسن وقت التشغيل لتجنب استخدام المزامنة فار قبل تهيئة المهام
إزالة النموذج الكلي المستقطبة من المهام واجهة؛ استخدام أسماء القياسية بدلا من ذلك
تسمية موحدة لكافة إجراءات طبقة مهمة لchpl_sync _ * () وchpl_task _ * ()
إزالة شرط لتنفيذ واجهة متغير واحد
إنهاء انتقلت من المواضيع من طبقة المهام FIFO لبثريدس خيوط
تنفيذ مبسط للمتغيرات متزامنة في طبقة pthread خيوط
انتقلت المسؤولية عن التهم موضوع من المهام FIFO لpthread خيوط
العديد من التحسينات على طبقة الاتصال وقت التشغيل:
إعادة هيكلة واجهة الاتصالات لدعم طول / نوع الحجج
وأضاف واجهة لعدم عرقلة حصول عمليات للبالاتصالات. السطح البيني
موحدة عن عمليات الحصول عن بعد لاستخدام CHPL_COMM_GET () ماكرو
ريفاكتوريد / إعادة تسمية رؤوس اجهة الاتصالات
نظام الاختبارات
طرأ تحسن كبير على الاختبار والرسوم البيانية قدرات الأداء
(انظر التعليقات في الجزء الأمامي من start_test عن وثائق)
تحسين دعم نظام الاختبار لتنظيف بعد نفسها
أضاف القدرة على تجنب استخدام أي المراوغة من ستدين
إضافة خيار لتوفير خيار prediff على نطاق المنظومة
أضاف القدرة على استخدام ميزة المهلة الأم قاذفة وليس في بيثون
تحسن كيف يقتل نظام الاختبار الاختبار الذي انقضاء المهلة
إصلاح الخلل في الملفات التي .preexec عمل إلا إذا '.' كان في المسار الخاص بك
داخلي
وأضاف مترجم العلم --break على اساس الهوية للمطورين لتحديد العقدة AST يخلق
تحسين تنظيم UTIL / محتويات الدليل
غيرت الطريقة التي يتم حسابها أرقام إصدار / عرض للمستخدمين استنادا SVN-
واضاف لدعم task- / موضوع معين رمز وحدة
وأضاف القدرة على طباعة التهم AST المخصصة بين كل مرور
إضافة جدب اسم مستعار جديد لمترجم --gdb: "الموضع" يطبع موقع عقدة AST ل
تحسنت كثيرا تنفيذ pragmas / الاعلام لتجنب حالات الخطأ
إزالة عدة حالات من مقارنات السلسلة التي لا داعي لها في المجمع
إزالة استخدام عرضة للخطأ من CHPL_TASKS وCHPL_THREADS كرموز المعالج
وثائق bestPractices أضاف للمطورين (غير المدرجة في الإفراج)
munging الداخلية تغير من '=' و '==' إلى 'ASSIGN "و" يساوي "على التوالي
وأضاف مطور علم --print معرف على اساس خطأ في طباعة ID AST على الأخطاء
تحسين صرامة C ++ فحص أولي
وأضاف اتفاقات المساهمين الخارجية إلى شجرة SVN (وليس في إطلاق سراح)
وأضاف فكرة من أنواع الداخلية المستخدمة من قبل المجمع ولكن ليس للمستخدم

برامج مماثلة

wempy
wempy

20 Feb 15

Go
Go

27 Sep 15

تعليقات ل Chapel

لم يتم العثور على التعليقات
إضافة تعليق
بدوره على الصور!