Visokozmogljivi računski sestav Fakultete za strojnišvo v Ljubljani namenjen raziskavam, ki zahtevajo vzporedno računanje znanstvenih problemov.

Razhroščevanje, analiza in razčlenitev programov

Brian W. Kernighan je nekoč napisal:
“Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.”

Subversion

Subversion (SVN) je sistem za sledenje spremembam izvorne kode, ki omogoča sočasno delo na skupnem projektu. Pri vsaki shranitvi na SVN strežnik, se shranijo le spremembe datotek, ki so bile dane pod nadzor. S hranjenjem vseh verzij izvorne kode je tako lažje nadzorovati razvoj projekta, slediti spremembam in oceniti njihov vpliv na delovanje celotnega projekta. Ker se hranijo vse verzije določene datoteke, lahko tako delamo le na eni datoteki, ne da bi bilo potrebno shranjevanje stabilnih ali kako drugae pomembnih verzij datoteke. Način dela je tako lahko časovno in prostorsko razporejen.

Fortran - Vaja 2

module trig implicit none real, parameter :: pi = 3.1415992 contains real function degtorad(deg) real, intent(in) :: deg degtorad = deg*pi/180 end function degtorad real function radtodeg(rad) real, intent(in) :: rad radtodeg = rad*180/pi end function radtodeg end module trig program anglecov use trig implicit none real a,b,c, d,e,f ! preberi tri kote read *, a, b, c ! Pretvori kote iz stopinj v radiane d=degtorad(a); e=degtorad(b); f=degtorad(c) ! izpiši kote print *, d, e, f ! pretvori kote iz radianov v stopinje

Primeri v Fortranu 90

Vaja 1 : Pozdrav

Preverimo delovanje programa z najkrajšim programom.

 program hello
  !Izpiše klasični pozdrav na terminal
  implicit none
  write (unit = *, fmt= *) "Hello World!"
end program hello

Program prevedemo in poženemo z ukazom

$ f95 hello.f90 -o hello
$ ./hello
 Hello World

Vaja 2 : Stopinje v Radiane

Poleg vgrajenih trigonometrijskimi funkcijami (sin(), cos(), tan, ...) si želimo še razne pomožne funkcije, kot je pretvorba stopinj.

Napišimo modul imenovan trig, ki vsebuje te funkcije za modularno rabo v drugih programih. Osnutek programa trig.f90 je naslednji

Osnove Fortrana

Programski jezik FORmulaTRANslation je bil prvotno razvit 1950 in nato standardiziran 1977. Kasnejše posodobitve vsebujejo Fortran 90.

Glavne prednosti so:

  • Pisanje formul
  • Zelo soroden pisanju matematičnih operaci
  • vgrajena kompleksna števila
  • Upravljanje s polji je naravno. Fortran 90 ima zmogljivo sintakso
  • Zelo optimiziran jezik. Uporaba kazalcev je omejena.
  • Naravni jezik za HPC aplikacije

Slabosti:

Programiranje GPU z CUDA

CUDA (Compute Unified Device Architecture) je paralelna računska arhitektura razvita v NVIDIA in se izvaja v grafičnih karticah (GPU).

LaTeX in slike v SVG

Program za stavljenje člankov z množico formul in slik.

  • TeX (1977)
  • LaTeX - skupek makrojev za enostavno uporabo TeXa
  • Prva verzija razvita 1985
  • Skupina ljudi vzdržuje od leta 1993

Na sestavu HPCFS  je poleg "uradnega" emTeX nameščen še TeX Live, ki je izboljšana verzija TeX distribucije. Uporabniki si jo namestijo kot privzeto z dopisom ustreznega modula v .bash_profile

Strani

Subscribe to Visokozmogljivi računski sestav HPCFS RSS