Section author: Mario Radovan, Vedran Miletić, Ivan Ivakić, Domagoj Margan, Tomislav Šubić, Edvin Močibob

Istraživanje i razvoj

(Ova je stranica također dostupna na engleskom jeziku.)

Superračunalo Malina

Inicijativa koja predlaže projekt: InfUniri MPI

Mjesto i vrijeme provedbe projekta: Rijeka, Hrvatska, od 20.12.2013. do 01.06.2014.

Znanstveno ili stručno područje projekta: Tehničke znanosti

Voditelj projektnog tima ili prijavitelj pojedinac, ukoliko se radi o samostalnom projektu jednog studenta: Tomislav Šubić

Članovi projektnog tima: Edvin Močibob

Opis udruge/inicijative

Inicijativa se zalaže za promicanje i edukaciju studenata o superračunalima i distribuiranoj obradi podataka. Za sada se sastoji samo od dvojice studenata. Članovi su Edvin Močibob i Tomislav Šubić; obojica studenti jednopredmentne informatike na Odjelu za informatiku Sveučilišta u Rijeci.

Detaljan opis projekta

Postoji nekoliko glavnih komponenti superračunala, odnosno računalnog clustera; računalni hardver, operacijski sustav, treba nam nešto što će povezati sva ta računala i treba nam način kako će ona međusobno komunicirati. Računalo koje namjeravamo koristiti je Raspberri Pi. To je malo računalo veličine kreditne kartice. Ono se sastoji samo od jedne računalne ploče sa svim komponentama. Sposobno je “vrtjeti” Linux operacijski sustav. Procesor koji ono koristi zasniva se na ARM tehnologiji i radi na 700 Mhz. Najvažniji adut i razlog zbog kojeg smo odabrali ovo računalo jest njegova cijena. Naime, za ovaj projekt potrebno nam je 64 komada stoga cijena itekako utječe na izvedbu projekta. Jedan Raspberry Pi košta 240 kn (cijena za kupnju više od 50 kom.). Zbog te cijene Raspberry Pi dolazi bez tvrdog diska i napajanja. Kao tvrdi disk koristi ćemo SD karticu. Nakon razmatranja različitih opcija odlučili smo se za varijantu od 16GB. Cijena svake kartice iznosi oko 100 kn. Ukupno će naše superračunalo imati 1TB memorije. Svakom računalu na radnom naponu od 5V (pri punom opterećenju) struja iznosi 700ma, odnosno najveća potrošnja mu je 3,5W. Prema tim kriterijima moramo odabrati pravo napajanje. Najbolje (i najjeftinije) rješenje su dva napajanja, od kojih svako pri 5V ima izlaznu struju od 30A, što znači da je svako napajanje dovoljno za 32 računala. Napajanje koje smo odlučili uzeti je Xilence 600W GE s cijenom od 530 kn. Operacijski sustav mora biti Linux distribucija; Raspbian koji je specifično napravljen za Raspberri Pi ili Arch linux. Razne distribucije možemo isprobavati kada složimo računalo te onda odlučiti koja nam najviše odgovara. Ono što planiramo složiti je takozvani Beowulf cluster. To je računalni cluster napravljen od hardverski istovjetnih čvorova – računala. Nadalje, sva se ta računala treba umrežiti. Arhitekturu namjeravamo organizirati tako da postoji jedan glavni čvor koji upravlja svim ostalim čvorovima. Koristiti ćemo switcheve; na svaki switch mogu se spojiti 24 čvora, što bi značilo da nam trebaju barem 3 switcha. Svakom je cijena oko 400 kn. Kako bi spojili računala sa switchevima potrebni su nam ethernet kablovi. Svakom kabelu je cijena 5 kn. Uza sve navedene komponente treba nam alat kojim ćemo obradu podataka izvršavati paralelno po svim čvorovima. Najbolji alat za to je MPI (engl. Message passing interface). To je protokol koji nam omogućava da pišemo programe za paralelne računalne sustave. Taj dio smo obrađivali na studiju, te nam je to bila i inspiracija za ideju i pokretanje ovog projekta.

Kako bi sve to mogli fizicki držati na okupu, trebamo dizajnirati i napraviti kućište. Zbog povoljnije cijene cilj je napravili glavnu konstrukciju od lima ili drva. Računala bi međusobno posložili koristeći posebne vijke za tu svrhu (engl. threaded hex spacers). Rado bi zbog kvalitete to radili sa čelčnim vijcima, no oni su gotovo dvostruko skuplji nego plastični, cijena kompleta od 100 komada je 430 kuna, a nama bi trebalo 120 komada. Ovakav sustav treba održavati hladnim za što bi u samo kućište ugradili ventilatore. Potrebno nam je najmanje 2, a jedan komad je oko 50-ak kuna.

Nakon sastavljenog superračunala slijedi proučavanje, njegovo poboljšavanje i uvijek moguće unaprijeđenje sustava.

Ciljevi projekta

(Opis mjerljivih rezultata projekta s posebnim osvrtom na ostvarenje ciljeva Zaklade prema Pravilniku o uvjetima, načinu i postupku za dodjelu sredstava za ostvarivanje svrhe Zaklade Sveučilišta u Rijeci te prema Prioritetnim i strateškim ciljevima Zaklade 2008. – 2012.)

Krajnji rezultat projekta je izgradnja jeftinog superračunala koje bilo dostupno ne samo nama – studentima koji ga namjeravaju napraviti, nego i našim kolegama te ostatku akademske zajednice. Osnovna motivacija za prijavu ovog projekta bila je želja da se pobliže nauči kako izgleda i radi superračunalo (tj. jedna ekonomičnija verzija superračunala), dakle jednostavna želja za proširivanjem znanja o računalima. Nadalje, kao što bi na takvom superračunalu programirali i izvodili kompleksne izračune namijenjene baš za takvu vrstu računala, isto bi omogućili i našim kolegama (ne samo na Informatici nego i na drugim studijima).

Znanstvena istraživanja podrazumijevaju matematičku analizu i obradu podataka. Kada je količina takvih podataka velika njihova obrada može potrajati. Ni jedan znanstvenik ni akademik ne želi čekati više nego što treba na obradu podataka (ipak je vrijeme jedan od najvažnijih resursa za akademike). Cilj projekta je naučiti principe rada na superračunalima i isto omogućiti ostalim zainteresiranim studentima. Naime obrada podataka i ubrzanje te obrada nije trivijalan zadatak te takvo znanje može biti od velike koristi – takvo znanje student može koristit na svim budućim projektima/istraživanjima gdje se susreće sa velikim obujmom podataka.

Na našem studiju postoje kolegiji kao što su Operacijski sustavi (1 i 2) i Distribuirani sustavi čiji je nastavni plan direktno povezan s ovim projektom, pa bi se naše superračunalo moglo koristiti i u sklopu kolegija. Ovakav projekt ima puno potencijala. Mogle bi se organizirati radionice s ciljem upoznavanja studenata sa superračunalima. Računalo bi se moglo koristiti i u nekim budućim studentskim projektima. Važni faktori su i modularnost i skalabilnost ovakvog sustava. Možemo uvijek nadograđivati i poboljšavati takvo računalo.

Plan provedbe projekta (prikaz sukladno vremenu provedbe projekta)

  1. Faza (od 19.2. do 19.3.)
  • nabava svih komponenti i materijala
  1. Faza (od 19.3. do 20.4.)
  • slaganje komponenti
  • instaliranje i podešavanje sustava
  • pisanje izvještaja
  1. Faza (od 20.4. do 1.6.)
  • pisanje programa za obradu podataka i proučavanje

Prikaz planirane evaluacije projekta

Uz detaljan pisani izvještaj u kojemu bi naveli točan proces izrade superračunala, dodali bi i detaljan popis troškova izrade te primjere obrada/programa koje smo uspješno izveli na njemu. U izvještaju bi uz detaljne specifikacije dodali i slike procesa izrade te krajnjeg, složenog, superračunala.

Jednom izgrađeno superračunalo namjeravamo dalje koristiti kod programiranja za vlastite projekte te omogućiti isto kolegama. Tako da će kad god bude moguće superračunalo biti dostupno svima kojima se žele educirati o rada na superračunalima, pa tako i Vama koji bi se mogli osobno uvjeriti u realiziranost našeg projekta.

Opis načina vidljivosti Zaklade Sveučilišta u Rijeci tijekom projekta

Vidljivost Zaklade Sveučilišta u Rijeci izračavati će kroz naljepnice logotipa i naravno kroz naglašavanje sponzorstva u izjavama javnosti preko društvenih mreža i svake ostale prilike ukoliko se ona ukaže. >>>>>>> 7c9c58b… Opis projekta Superračunalo Malina

Razvoj e-kolegija Računalne mreže 2 na Sveučilištu u Rijeci u akademskoj godini 2011/2012.

Naziv projekta (naziv kolegija): Računalne mreže 2

Dodatne informacije o kolegiju: Kolegiji Računalne mreže 1 i Računalne mreže 2 spadaju među temeljne kolegije studija informatike i osnova su za mnoge kolegije koji slijede u nastavku studija, u koje spadaju Multimedijski sustavi, Dinamičke web aplikacije 1 i Dinamičke web aplikacije 2 s preddiplomskog studija informatike te Distribuirani sustavi, Upravljanje mrežnim sustavima, Upravljanje znanjem i Informacijska tehnologija i društvo s diplomskog studija informatike.

Trajanje projekta: 06.02.2012. – 29.06.2012.

Voditelj projekta: prof. dr. sc. Mario Radovan

Izvoditelji projekta: Vedran Miletić (administracija wiki sustava MoinMoin, priprema uputa za instalaciju programske podrške za studente, rad na pripremama i zadacima za laboratorijske vježbe, priprema rješenih primjera za studente, priprema predloška za studentske seminarske radove), Ivan Ivakić (rad na zadacima za laboratorijske vježbe, priprema rješenih primjera za studente), Domagoj Margan (rad na zadacima za laboratorijske vježbe koji uključuju primjenu znanja vježbi iz kolegija Operacijski sustavi 1 i Operacijski sustavi 2)

Ciljevi koji se postižu projektom

U planu je da se vježbe iz kolegija Računalne mreže 2 u akademskoj godini 2011/2012. Izvode dijelom kao auditorne, a dijelom kao laboratorijske. Cilj projekta je razviti materijale za e-učenje koji će se koristiti za izvođenje laboratorijskih vježbi iz kolegija. Same vježbe izvoditi će se u mješovitom obliku, online i f2f korištenjem materijala koji će biti razvijeni u okviru ovog projekta.

Moodle, implementiran u okviru sustava za e-učenje MudRi, će se na ovom kolegiju i dalje koristiti za evidenciju ostvarenih bodova studenata i postavljanje materijala predavanja i auditornih vježbi. Međutim, predlagatelji projekta Moodle smatraju neadekvatnim alatom za ovaj projekt zbog njegovih nedostataka u pogledu mogućnosti kolaboracije među studentima u izradi seminarskih radova. Konkretno, Wiki sustav koji Moodle ima integriran u sebi je prilično oskudnih mogućnosti u usporedbi s danas često korištenim wiki alatima, primjer kojih su MediaWiki, DokuWiki i MoinMoin.

Sva tri alata su otvorenog koda te su potpuno besplatni i slobodno dostupni. Predlagatelji projekta smatraju MoinMoin najboljim zbog jednostavnosti instalacije i održavanja, podrške za više wikija u jednoj instalaciji, podrške za Unicode, izvrsnog baratanja wiki podstranicama, predložaka, odlične podrške za pretraživanje, WYSWYG editora, podrške za privitke na stranicama, listi kontrole pristupa wiki stranicama i činjenice da je alat napisan u programskom jeziku Python koji se na Odjelu za informatiku intenzivno koristi, te to ostavlja mogućnost proširenja u slučaju potrebe. Kako je MoinMoin projekt otvorenog koda, od takvih će proširenja čitava zajednica imati koristi.

Alat koji će se koristiti u sklopu laboratorijskih vježbi kolegija je mrežni simulator ns-3 koji je dostupan pod slobodnom licencom (GPLv2) i namijenjen prvenstveno za primjenu u edukaciji i znanstvenom istraživanju. Razvoj simulatora, u početku sponzoriran od strane organizacija kao što su NSF, INRIA i Georgia Tech, danas vode znanstvenici i istraživači računalnih mreža diljem svijeta. Mogućnosti primjene su praktički neograničene; naime, zbog otvorenosti koda projekta postoji mogućnost proširivanja simulatora prema potrebama nastave na kolegiju te slanje promjena za uključivanje u budućoj verziji. Kao primjer sveučilišta koje već koristi isti alat u slične svrhe na sličan način navodimo grupu nastavnika na University of Pennsylvania, čija su iskustva detaljno opisana u radu Harjot Gill, Taher Saeed, Qiong Fei, Zhuoyao Zhang, Boon Thau Loo: “An Open-source and Declarative Approach Towards Teaching Large-scale Networked Systems Programming.” 2011.

Laboratorijske vježbe će se izvoditi hibridno. Primjena e-obrazovanja bit će na razini B prema “Preporukama za izradu obrazovnih materijala za e-učenje”. Konkretno, to u ovom slučaju podrazumijeva tri osnovna elementa:

  • Pripreme za laboratorijske vježbe i zadaci koje će studenti rješavati u mrežnom simulatoru bit će dostupne putem wiki sustava; studentima će biti omogućeno komentiranje i uređivanje sadržaja dostupnih na wikiju, što će dugoročno rezultirati kvalitetnijim nastavnim materijalima.
  • Predaja rješenja zadataka vršit će se putem wiki sustava; zbog mogućnosti kontrole pristupa koje nudi MoinMoin, studenti neće moći vidjeti tuđa rješenja.
  • Programski zadaci koje će studenti izrađivati u manjim grupama također će se predavati putem wikija; to će studentima unutar iste grupe omogućiti intenzivnu kolaboraciju u stvarnom vremenu, a nastavnicima će biti olakšan uvid u proces nastajanja rada.

Kako se, zbog velike podrške akademske zajednice, očekuje da će se ns-3 i dalje razvijati i sve više koristiti, pripremljeni materijali moći će se uz manje dorade koristiti više godina. Pored toga, razvoj dodatne funkcionalnosti simulatora će omogućiti jednostavno proširivanje materijala za laboratorijske vježbe kao i variranje tema programskih zadataka za studente.

Kratki opis projekta

U wiki sustavu bit će izrađene pripreme i zadaci za iduća poglavlja laboratorijskih vježbi:

  • Osnovni pojmovi simulacije: paketi, čvorovi, mrežni adapteri, komunikacijski kanali, mrežne utičnice
  • IPv4 adrese i maske podmreže, usmjeravanje, UDP i TCP aplikacije, dostupne implementacije TCP-a, procjena RTT-a
  • Upravljanje zagušenjem: redovi čekanja, odbacivanje paketa na usmjerivačima, algoritmi koje TCP koristi za kontrolu zagušenja
  • Mrežne aplikacije: programiranje vlastitih mrežnih aplikacija korištenjem mrežnih utičnica i njihova primjena u simulaciji

Olakotna je okolnost što je sva dokumentacija alata koji će se koristiti javno dostupna putem weba pod slobodnom licencom, te (kao i sam alat) zbog toga ne predstavlja nikakav trošak i pojednostavljuje nabavku novih “izdanja”.

Pored toga, u sklopu projekta bit će izrađena i dva pomoćna sadržaja:

  • predložak za predaju rješenja zadataka zadanih za samostalno rješavanje u sklopu laboratorijskih vježbi,
  • predložak za postavljanje na wiki većih programskih zadataka namijenjenih za grupnu izradu.

Projekt ima potrebu za financiranjem:

  • nabavke udžbenika “Network Modeling and Simulation: A Practical Perspective” autora Mohsen Guizani, Ammar Rayes, Bilal Khan i Ala Al-Fuqaha,
  • nabavke računala koje će se koristiti kao poslužitelj na kojem će studenti izvoditi simulacije; poslužitelj u računalnoj učionici Odjela za informatiku nije dovoljne snage da bi se na njemu mogla izvoditi nastava za 20 studenata,
  • naknade sudionicima projekta.

Smatramo da bi preporučena raspodjela financijskih sredstava u kojoj udio od 50% otpada na autorske honorare rezultirala nabavkom nedovoljno jakog računala, te bi kvaliteta nastave time bila znatno smanjena. Zbog toga na uštrb autorskih honorara predlažemo nabavku jačeg računala.

Opis učinkovitosti projekta na postizanje obrazovnih ishoda i motivaciju studenata na kolegiju

Do sada su zadaci rješavani na vježbama iz Računalnih mreža 2 bili ograničeni u veličini obzirom da se rješavaju “ručno” (na papiru, računanjem uz pomoć kalkulatora ili tabličnog kalkulatora), pa zbog toga nije bilo moguće raditi proračune za veće količine podataka i složenije mrežne topologije. Uvođenjem laboratorijskih vježbi omogućavaju se puno složeniji proračuni i jednostavno proračunavanje rješenja za različite vrijednosti početnih parametara zadataka, što omogućava eksperimentiranje s mrežnim protokolima.

S druge strane, uvođenjem e-učenja putem wiki sustava bit će omogućena i potaknuta kolaboracija studenata kod rješavanja zadataka u situaciji kada je to prikladno.

Zbog toga će biti vrlo lako izvoditi mrežne eksperimente s različitim mrežnim protokolima, te je na taj način napravljen iskorak u smjeru istraživačkog rada, što će sveukupno pozitivno utjecati na motivaciju studenata.

Očekivani rezultat/završni proizvod

Detaljne pripreme i zadaci s rješenjima za 15 sati laboratorijskih vježbi iz Računalnih mreža 2, te predložak za predaju rješanja zadataka laboratorijskih vježbi i predložak za predaju većih programskih zadataka koji će se koristiti kod izvođenja vježbi.

Vremenski plan izvršenja projekta

Faza 1. (06.02.2012. – 24.02.2012.)

Priprema wiki sustava koji će se koristiti, izrada predložaka za predaju zadataka laboratorijskih vježbi i predložaka za predaju programskih zadataka; priprema uputa za instalaciju potrebne programske podrške za studente.

Faza 2. (27.02.2012. – 08.06.2012.)

Izrada materijala za pripremu laboratorijskih vježbi i pripadnih zadataka, izrada programskih zadataka, izvođenje laboratorijskih vježbi.

Faza 3. (11.06.2012. – 29.06.2012.)

Evaluacija postignutih rezultata od strane sudionika projekta i od strane studenata (anketa), planiranje budućih aktivnosti.

Plan razvoja projekta nakon završetka financiranja

U akademskoj godini 2012/2013. laboratorijske vježbe uvesti će se i na kolegiju Računalne mreže 1 u dijelu fonda sati vježbi. Kod izrade materijala za laboratorijske vježbe koristiti će se iskustva stečena tijekom izvođenja ovog projekta te ovdje izgrađena pedagoško-didaktička i tehnička rješenja.