Configurarea OS X ca mediu de programare științifică

Sursă Originală: https://atmos.uw.edu/~salathe/osx_unix/

Există deja o mulțime de chestii OS X pe web. Această pagină este pur și simplu o carte de bucate despre modul în care am folosit aceste resurse pentru a împlini sistemul meu. Ceea ce urmează urmează să fie instrucțiuni pas cu pas pentru utilizatorii noi pentru a-și configura sistemul de operare OS X Mac pentru a funcționa într-un mediu Unix. Ca atare, nu este pentru toată lumea. De asemenea, nu intenționez să fiu cuprinzător în listarea tuturor resurselor care sunt tratate altfel, dar indică legături acolo unde este cazul.

Nu am actualizat pentru fiecare lansare OS X, dar majoritatea lucrurilor sunt generice pentru orice versiune de la 10.2

Pentru resursele HPC actuale pentru OS X, consultați http://hpc.sourceforge.net/ .

fundal

OS X pune toate uneltele comerciale standard (Word, Illustrator, Matlab) și un mediu de programare unix într-o singură cutie. Aceasta prezintă multe avantaje pentru programarea științifică față de alte sisteme desktop bazate pe Windows, Linux sau Unix. Deși multe pachete unix și linux există pentru pregătirea documentelor, există multe motive pentru care ar trebui să aveți acces la instrumentele comerciale standard care rulează numai pe calculatoarele Windows și Macintosh (de ex., De la Microsoft și Adobe). În trecut însă, integrarea acestor computere în sistemul de calcul primar a fost incomodă.

Sistemul de operare UNIX al sistemului OS X permite montarea nfs, ferestrele X și cele mai multe unelte software comune Unix / Linux pot fi executate pe Mac, astfel încât Mac-ul să fie doar un alt calculator Unix. Fortran sau codul c pot fi partajate direct între mac și alte platforme. Deci, nu mai trebuie să decidă între un sistem unix sau un sistem de birou pe birou; OS X face ambele.

Apple are o pagină pe dezvoltarea Unix , care este un loc bun pentru a începe.

Așa cum este livrat, OS X este setat pentru utilizatorul non-tehnic tradițional Mac, nu ca o cutie unix. Administrarea sistemului nu este, de asemenea, exact aceeași cu o cutie unix. Deci, trebuie făcuți câțiva pași suplimentari pentru a ajunge la toată munca.

Carte de bucate

Iată lucrurile pe care trebuia să le fac pentru a-mi face funcția Powerbook pentru mine folosind unelte cu sursă deschisă. S-ar putea să existe mai multe căi în jurul valorii, dar fără prea multe documente, asta trebuie să fac. (Ori de câte ori dau instrucțiuni de linie de comandă (de ex. În cadrul shell-ului, executând Terminal), semnul% este promptul pentru un utilizator normal. Comanda sudo vă oferă privilegii de administrator și poate fi administrată numai de cineva din grupul admin.

  1. Setați uid pentru a se potrivi uid pe rețeaua unix existentă
  2. Configurați mount-urile nfs la rețeaua unix existentă
  3. Instalați ferestrele X.Apple livrează o aplicație emulantă X11, dar nu face parte din instalarea standard. Dacă instalați de pe CD-uri, alegeți o instalare personalizată și vi se va oferi opțiunea pentru X11. Pentru noile computere, o instalare X11 este probabil undeva pe hard disk.De asemenea, puteți rula Xfree86 din proiectul fink (vezi mai jos).
  4. Instalați compilatoare fortran și c
  5. Instalați fișierele fink sau MacPort, dacă doriți, pentru a ușura instalarea software-ului. fink este un sistem de administrare a pachetelor preluat din GNU Debian Linux. MacPorts este un instrument similar folosit de la BSD. În experiența mea, Fink este un pic mai ușor de utilizat (atunci când este folosit pentru instalări binare și FinkCommander GUI), dar MacPorts este mai fiabil. MacPorts are acum și o interfață grafică, Porticus , care necesită OS X 10.4.
  6. Confruntarea cu datele binareMac utilizează un format binar diferit de sistemele Intel, AMD și Alpha. G4 folosește așa-numita comandă byte “big endian”, la fel ca majoritatea celorlalte platforme Unix. x86 (Intel, AMD) și Alpha (Dec / Compaq / HP) utilizează “little endian”. Acest lucru poate cauza probleme cu partajarea de date binare între platforme. Cea mai bună soluție este să utilizați un format de auto-descriere independent de platformă, cum ar fi netCDF sau HDF sau chiar ascii gzipped.NetCDF este disponibil pentru OS X de la link-ul de mai sus sau de la fink Aceste porturi OS X suportă doar interfața fortran-77 prin g77. Dacă utilizați un compilator comercial comprimat 95, cum ar fi NAGware, compilați-vă în conformitate cu aceste instrucțiuni pentru a obține interfața f90.HDF este, de asemenea, disponibil pentru OS X de pe site-ul web HDF legat mai sus sau fink .Pentru a lucra cu binar brute, citiți acest articol .
  7. Biblioteci matematice optimizate.Dacă efectuați operații matrice pe un G4 / G5, veți dori să utilizați librăriile LAPACK și BLAS care profită de procesorul vectorial.Mac-urile sunt acum incluse în pachetul software automat de algebră liniară ( ATLAS ). Există chiar și o bibliotecă G4 precompilată aici . ATLAS conține un BLAS complet reglat și un LAPACK parțial.De la OS X 10.2 , Apple include biblioteci ATLAS / Lapack optimizate în cadrul vecLib.Atât NAG f95 cât și g77 acceptă pavilionul -framework veclib pentru a conecta la veclib. De exemplu:% f95 -o prog prog.f90 -framework veclib Absoft are instrucțiuni aici .
  8. Instalați alte instrumente după cum este necesar. Liste complete există pe Internet, precum:Iată câteva lucruri specifice pe care îmi place:
    • Emacs editor de text:Am descoperit că cele mai bune emacs pentru OS X sunt GNU Emacs în noua sa versiune carbon . Acest lucru începe să fie susținut, deci nu există binare oficiale. Cel mai bun pariu este să-l construiți de la sursă sau să încercați să găsiți un curent binar în mod rezonabil pe linie.Două descărcări binare bune sunt legate de Apple:Pentru a construi de la sursă, descărcați sursa din CVS: setenv CVS_RSH “ssh” cvs -z3 -d: ext: anoncvs@savannah.gnu.org: / cvsroot / emacs co emacs> cvs.out și compilați: cd emacs ./configure –enable-carbon-app – fără-x> & configure.err make bootstrap> & make.err Pentru X ferestre, Xemacs este o opțiune bună, și este disponibil de la fink ).
    • NetCDF : Acesta este un pachet esențial pentru seturile de date privind științele atmosferice. Dacă utilizați g77, îl puteți obține de la fink. Dacă utilizați un compilator fortran90, va trebui să descărcați sursa și să o construiți singură. Se construiește frumos cu NAG f95 după această procedură .
    • XY parcele: grație (instalați folosind fink )
    • Plotarea câmpurilor de date atmosferice:Pachet de scripting simplu de linie de comandă: grads . Versiunea OS X de la Whit Anderson la COLA.Graficele NCAR sunt disponibile ca binare pre-construite. Acestea folosesc g77, dar pot fi folosite cu compilatoare XLF sau NAG dacă includeți biblioteca g2c atunci când compilați (adică adăugați -lg2c).
    • Adobe Illustrator . Fișierele EPS din Grace, GrADS și NCAR Graphics (eps sau cgm) sunt ușor de deschis și editate cu Illustrator.
    • Microsoft Office . Fișierele Adobe eps pot fi ușor incluse în documentele cu cuvânt.
  9. Configurați imprimante. Puteți adăuga imprimante lpr în rețea suspendate din casete UNIX utilizând Print Center dacă imprimantele nu acceptă Appletalk. Dacă PrintCenter se blochează, citiți corecțiile pentru Print Center .

Software pentru știința atmosferei și a oceanului

Multe dintre instrumentele populare folosite de oamenii de știință atmosferici și ocean pentru analiza și vizualizarea datelor sunt disponibile pe OS X. Acestea includ:

  • MATLABVersiunea studentului $ 99, pachet comercial de 1.900 $ – Multe pluginuri disponibile
  • Grafică NCARDescărcați gratuit binar. Bibliotecile fortran sunt construite folosind g77, dar pot fi folosite cu compilatoare XLF sau NAG dacă includeți biblioteca g2c atunci când compilați (adică adăugați -lg2c) și flag -qextname pentru xlf.NCAR Graphics este un pachet software Fortran și C bazat pe vizualizare științifică.
  • Limba de comandă NCARDescărcați gratuit binarNCL este un limbaj de programare conceput special pentru analiza și vizualizarea datelor
  • AbsolvențiDescărcați gratuit binarSistemul de analiză și afișare a rețelei (GrADS) este un instrument interactiv desktop care este utilizat pentru accesul, manipularea și vizualizarea ușoară a datelor științelor pământului
  • NetCDFdescărcare gratuită a surseiNetCDF (formular de date comun de rețea) este o interfață pentru accesul la date orientat pe arhitectură și o colecție distribuită liber de biblioteci de software pentru C, Fortran, C ++, Java și perl care furnizează implementări ale interfeței. NetCDF este formatul standard pentru distribuția datelor atmosferice și oceanelor la nivel mondial.
  • Vis5DDescărcați gratuit codul sursăVis5D este un sistem software care poate fi utilizat pentru a vizualiza atât datele gridded, cât și datele localizate neregulat. Sursele acestor date pot proveni din modelele meteorologice numerice, observațiile de suprafață și alte surse similare.
  • DihorBinar gratuit. Suportul OS X este doar parțial / betaFerret este un mediu interactiv de vizualizare și analiză a computerului conceput pentru a răspunde nevoilor oceanografilor și meteorologilor care analizează seturi de date mari și complexe.

Alte legături

E-mail: salathe@atmos.washington.edu