DAP FORTRAN كانت إضافة لأجزاء FORTRAN التي لا تتعلق بالإدخال/الإخراج مع تصميمات تدعم الحوسبة المتوازية لمعالج مصفوفات ICL Distributed Array Processor (DAP). كان لدى DAP Single Instruction Multiple Data (SIMD) بمعمارية معالجة تعتمد على 64 معالجًا بتنظيم فردي. كانت لدى DAP FORTRAN الميزات الرئيسية التالية: كانت لديها عمليات مصفوفات ومتجهات، وكان يمكن أداء الاسنادات تحت قناع منطقي بحيث لا تتغير سوى بعض العناصر في الهدف من الاسناد. من الجانب السلبي، كانت العمليات تُنفَّذ باستخدام حجم الأجهزة الأساسي، أي على مصفوفة 64×64 أو متجه 64 عنصرًا. في التعريف، يمكن حذف بُعد واحد أو اثنين كما في: (INTEGERn تحجز 8n بت حيث n يتراوح من 1 إلى 8، و(REALn تحجز 8n بت حيث n يتراوح من 3 إلى 8، و (LOGICAL تحجز بت واحد. ومع ذلك، كانت DAP FORTRAN تتحرك بين هدفين متضاربين. كانت بحاجة إلى استغلال مرافق DAP بشكل فعال. ولكنها كانت تحتاج أيضًا إلى أن تكون متاحة لمجتمع الحوسبة العلمية الذي كان لغته الأساسية، التي كان تصميمها مرتبطًا بشكل وثيق بالمعماريات التسلسلية، هي FORTRAN. اللهجة المستخدمة كانت FORTRAN في سلسلة 2900 من ICL والتي استندت إلى نسخة مبكرة من معيار FORTRAN 77 وكانت تعاني من عدم تطابق مع FORTRAN 77 والمعيار القديم FORTRAN 66. كانت DAP FORTRAN مختلفة بشكل كبير عن FORTRAN القياسية وكانت الآلة غير قادرة على قبول أو تحسين البرامج القياسية لـ FORTRAN. على الجانب الآخر، بالمقارنة مع اللغات المعاصرة الأخرى التي كانت من التصميم قابلة للتوسيع (على وجه الخصوص ALGOL-68)، كانت FORTRAN أقل ملاءمة لهذه المهمة. كان النتيجة غير أنيقة بشكل ملحوظ وكان يتطلب الأمر تعلمًا جديدًا كبيرًا. من الناحية التشغيلية، كان هناك تكلفة إضافية لنقل البيانات الحسابية داخل وخارج المصفوفة، والمشاكل التي لم تتناسب مع مصفوفة 64×64 فتزيد من التعقيد إذا كان لديها حدود (65×65 كانت ربما الحالة الأسوأ!) – ولكن بالنسبة للمشاكل التي تتناسب مع التنظيم المعماري، يمكن أن تتفوق على معماريات خط الأنابيب الحالية من نوع Cray بمقدار مرتين. استخدمت إصدارًا لاحقًا من DAP Fortran-Plus والذي استند إلى FORTRAN 77 وكان لديه فهم أكبر لفهرسة المرجعية. وعلى وجه الخصوص، كان يقوم تلقائيًا بتعيين مصفوفات الحجم الخاص بالمستخدم على الأجهزة الأساسية.
0