DAP FORTRAN - DAP FORTRAN

DAP FORTRAN bylo rozšířením částí, které nejsou IO FORTRAN s konstrukty, které podporovaly paralelní výpočty proICL Distributed Array Processor (DAP). DAP měl a Jedna instrukce více dat (SIMD) architektura s 64bitovými jednobitovými procesory.

DAP FORTRAN měl následující hlavní rysy:

  • Mělo to maticové a vektorové operace.
  • Přiřazení bylo možné provést pod logickou maskou, takže byly změněny pouze některé prvky v cíli přiřazení.
  • Na negativní straně - operace byly prováděny pomocí velikosti podkladového hardwaru, tj. Na matici 64 x 64 nebo na 64 prvkovém vektoru.

V deklaraci lze vynechat jeden nebo dva rozsahy jako v:

C Násobení vektoru maticí NEMOVITÝ M(,), PROTI(), R() R = SOUČET(M*MATR(A))C Konvergovat k Laplaceovu potenciálu v oblasti NEMOVITÝ P(,), OLD_P(,) LOGICKÝ UVNITŘ(,) DĚLAT 1 K. = 1, ITERACE OLD_P = P P(UVNITŘ) = 0.25*(P(,+)+P(,-)+P(+,)+P(-,)) LI (MAX(břišní svaly(P-OLD_P)) .LT. EPS) VRÁTIT SE    1 POKRAČOVAT

Vynechaná dimenze byla brána jako 64, velikost jedné strany DAP. Rychlost aritmetických operací silně závisela na počtu bitů v hodnotě. INTEGER * n vyhrazeno 8n bitů, kde n je 1 až 8, a REAL * n vyhrazeno 8n bitů, kde n je 3 až 8. LOGICKÉ vyhrazeno jeden bit.

DAP FORTRAN však spadl mezi dva protichůdné cíle. Potřebovalo efektivně využívat zařízení DAP. Musí však být také přístupné vědecké výpočetní komunitě, jejíž primárním jazykem, jehož design úzce souvisí se sériovými architekturami, byl FORTRAN. Použitým dialektem byl ICL 2900-series FORTRAN, který byl založen na rané verzi FORTRAN 77 standard a měl neshody s FORTRANEM 77 a starším FORTRAN 66 Standard.

DAP FORTRAN se významně lišil od standardního FORTRANU a stroj nebyl schopen přijmout nebo optimalizovat standardní FORTRAN programy. Na druhou stranu ve srovnání s jinými současnými jazyky, které byly záměrně rozšiřitelné (zejména ALGOL-68 ), FORTRAN byl pro tento úkol méně vhodný. Výsledek byl znatelně nedovolený a vyžadoval hodně nového učení. Z provozního hlediska existovala režie na přenos výpočetních dat do a ven z pole a problémy, které neodpovídaly matici 64x64, způsobily další složitost pro zvládnutí hranic (65x65 byl možná nejhorší případ!) - ale pro problémy, které vyhovovaly architektuře , mohlo by to překonat proud Cray potrubní architektury o dva řády.

Použitá novější verze DAP Fortran-Plus místo toho bylo založeno naFORTRAN 77 a měl pružnější indexování. Zejména automaticky mapovala pole velikosti uživatele na základní hardware.

externí odkazy

  • ICL DAP Fortran
  • Dennis Parkinson; John Litt (1990). Masivně paralelní výpočty s DAP. Výzkum monografií v paralelním a distribuovaném zpracování. Pitman. ISBN  978-0-273-08809-7.