SISSEJUHATUS HAJUSARVUTUSSE KASUTADES PYTHONIT Joonas Puura SISUKORD Sissejuhatus... 2 Ligipääs Rocket klastrile... 2 Windows... 2 Linux... 4 Vajaliku

Suurus: px
Alustada lehe näitamist:

Download "SISSEJUHATUS HAJUSARVUTUSSE KASUTADES PYTHONIT Joonas Puura SISUKORD Sissejuhatus... 2 Ligipääs Rocket klastrile... 2 Windows... 2 Linux... 4 Vajaliku"

Väljavõte

1 SISSEJUHATUS HAJUSARVUTUSSE KASUTADES PYTHONIT Joonas Puura SISUKORD Sissejuhatus... 2 Ligipääs Rocket klastrile... 2 Windows... 2 Linux... 4 Vajaliku töökeskkonna sätestamine... 4 Failide kättesaamine... 4 MPI4PY paigaldamine... 4 Tööde jooksutamine klastril... 5 Bash skripti näide... 5 Tere maailm! näide... 6 Ülesanne Teadete edastamine... 8 Rebane... 8 Ülesanne Tsükkel... 9 Teadete märgistamine Märgistamine Jagamine Kollektiivsed operatsioonid Barrier Broadcast Scatter ja Gather Ülesanne Muud operatsioonid Efektiivsem MPI4PY Programmide kiiruse mõõtmine Lahendused lisa ja kasutatud materjal... 18

2 SISSEJUHATUS Suuremahuliste arvutuste juures jääb praegusel ajal ühest arvutist tihtipeale väheseks. Sellepärast on loodud, ühendades kokku mitmeid arvuteid, suuremad süsteemid. Selliseid süsteeme kutsutakse hajusarvutuste kobarateks ehk klastriteks. Et klastris olevad arvutid saaksid töö tegemisel omavahel suhelda, siis on selleks loodud mitmeid meetodeid. Üks meetoditest on teadete edastamine ehk message passing. Suhtlemine käib teadete teel ehk arvutid saadavad programmi tööl üksteisele teateid (vajalikke andmeid). Teadete edastamine toimub läbi teadete edastamise liidese ehk läbi Message Passing Interface (MPI). Et kasutada Pythonit, siis kasutame me veel liidest MPI4PY. MPI keskkonnana kasutame OpenMPI d, mis on üks mitmetest (lisaks on veel näiteks Inteli MPI, MPICH). NB: Siin kasutame me Python 2.7.3, mis on oma süntaksi poolelt ligilähedane Python 3 versioonide süntaksile, aga näiteks print(x) asemel on print x. Samuti võiks vigade ennetamiseks mitte kasutada täpitähti, kuid kui programmile lisada algusesse rida, annab see võimaluse kasutada täpitähti. Sissejuhatuse raames kasutame Tartu Ülikooli arvutusklastrit Rocket ( LIGIPÄÄS ROCKET KLASTRILE Ülikooli klastri kasutamiseks peame kõigepealt sellele ligi pääsema. Iga kuu on Tartu Ülikooli tudengitel võimalik tasuta kasutada 300 walltime tundi arvutusmahtu. Seda aega arvutatakse kasutatud tuuma kaupa. Ehk kui kasutusel on 4 tuuma, siis korrutatakse iga kasutatud sekund neljaga. Nt kui töö, mis kasutab 1 tund aega ja 4 tuuma, siis on see 4 walltime tundi. Kui kasutaja ei asu ülikooli võrgus, siis on vaja kõigepealt ühenduda ülikooli võrguga. Väljastpoolt ülikooli võrku ligipääsemiseks on vaja kasutada VPN-i. Täpsem informatsioon VPN-i kasutamiseks WINDOWS Windowsi puhul saame kasutada näiteks programmi nimega Putty. Putty saab alla laadida: (valides putty.exe) Host Name on rocket.hpc.ut.ee ja Port 22. Connection type: SSH

3 Vajuta nupule Open. Nüüd peaks avanema terminal, kus küsitakse sinu kasutajainformatsiooni. Login as: kasutajanimi (kasutajanimi on sinu ülikooli kasutajanimi. Näiteks, millega logid ÕISi) sinu parool. l Õnnestunud autentimise korral peaksid nägema midagi sarnast:

4 LINUX Linuxis on võimalik ühenduda, kasutades terminalis käsku ssh (kasutajanimi on sama, mis eduroami ühendudes) Siis küsitakse sinu käest sinu kasutaja parooli password: Pärast parooli sisestamist vajuta enter ja kui kõik on korrektne, siis peaks terminaliskuvatama midagi sarnast: VAJALIKU TÖÖKESKKONNA SÄTESTAMINE FAILIDE KÄTTESAAMINE Tõmbame alla vajalikud failid, kasutades terminalis wget käsku. wget Pakime saadud failid lahti: tar xvzf materjalid.tar.gz Navigeerime kausta materjalid, kasutades käsku cd cd materjalid Rohkem informatsiooni terminalis kasutavate käskude kohta saab aine Operatsioonisüsteemid praktikumilehelt: MPI4PY PAIGALDAMINE Olles navigeerinud alla laetud failide kausta, peame kõigepealt jooksutama ühe skripti. Skripti jooksutamiseks kasutame käsku bash: bash mpi4pyinstall.sh See skript installeerib meile vajaliku MPI4PY liidese. Navigeerime nüüd tagasi kausta materjalid

5 cd ~/materjalid Et kontrollida, kas vajalik keskkond on korrektselt sätestatud, siis jooksuta järgnev skript, kasutades käsku sbatch, mis käivitab helloworld näite. sbatch kontroll.sh Natukese aja pärast peaks kausta ilmuma fail kontroll.out. Kausta sisu saab kuvada, kasutades käsku ls. Vaatame nüüd, mis sisu on kontroll.out is kasutades käsku cat cat kontroll.out Kui sisu on midagi sarnast: Tere, Maailm! Protsessi nr: 0 kokku protsesse: 4 nimega stage35. Tere, Maailm! Protsessi nr: 1 kokku protsesse: 4 nimega stage35. Tere, Maailm! Protsessi nr: 3 kokku protsesse: 4 nimega stage36. Tere, Maailm! Protsessi nr: 2 kokku protsesse: 4 nimega stage36. siis võiks eeldada, et keskkond on õigesti sätestatud. TÖÖDE JOOKSUTAMINE KLASTRIL Kuna arvutusklaster on jagatud ressurss, mille võimekus on piiratud, siis peab kuidagi tagama, et korraga ei jooksutataks liiga palju programme ja et kõik saaksid siiski oma soovitud töö tehtud. Selle jaoks jookseb arvutusklastril SLURM (Simple Linux Utility for Resource Management). SLURMi ülesanneteks on etteantud tööd jaotada arvutusresursside vahel ära, monitoorida etteantuid töid ja pidada tööde järjekorda. Täpsemalt: Kõik arvutustööd, mida klastril tehakse, võiks käia läbi SLURMi. Selleks, et oma töid jooksutada, siis oleks tarvilik luua oma programmi jaoks bashi skript, millega vastavat tööd jooksutatakse. Lihtsuse huvides on siin materjalides olevate programmide jaoks bashi skri iptid olemas, seega selle pärast ei pea muretsema. Selleks, et bashi skripti kasutades tööd jooksutada, on olemas käsk sbatch skriptinimi.sh. BASH SKRIPTI NÄIDE Vaatame skripti, millega jooksutasime hello world, et kontrollida kas MPI4PY töötab (kontroll.sh). #!/bin/bash # Töö nimi on HelloWorld #SBATCH -J HelloWorld # See töö nõuab kahte arvutussõlme #SBATCH -N 2 # Mitu tööülesannet sõlme kohta #SBATCH --ntasks-per-node=2 # Väljundfail #SBATCH --output=kontroll.out

6 # Vajalike moodulite laadimine. module purge module load openmpi module load python # Kausta nimi export MPI4PYDIR=paralleelarvutused # Pythoni wrapperi asukoht export PYTHONPATH=$HOME/$MPI4PYDIR/install/lib/python # Jooksutame kasutades mpi'd. mpirun python helloworld/helloworld.py Praegusel juhul huvitavad meid rohkem read: 1. #SBATCH J HelloWorld 2. #SBATCH N=2 3. #SBATCH --ntasks-per-node=2 4. #SBATCH --output=kontroll.out 5. mpirun python helloworld/helloworld.py 1. Määrab ära programmi nime. Klastri peal jooksvaid programme saab näha kasutades käsku squeue 2. Määrab ära, mitut füüsilist sõlme kasutatakse ehk näiteks, et mitut arvutit kasutatakse. 3. Määrab ära, mitu ülesannet ühele arvutussõlmele antakse 4. Väljundfaili nimi programm ei tagasta väljundit kohe ekraanile, vaid see tagastatakse faili. 5. Programm, mida jooksutatakse. Antud juhul jooksutab mpirun programm python, mis omakorda jooksutab kaustas helloworld paiknevat programmi helloworld.py Vaadates nüüd uuesti failis kontroll.out olevat väljundit, näeme, et kokku on 4 tööd 2 füüsilist sõlme x 2 tööd sõlme kohta = 4 tööd ja kahe erineva nimega sõlme: stage35 ja stage36. NB! Kui ei ole soovi ise määratleda, et mitu tööd mingil sõlmel on, siis on võimalik kasutada lihtsalt parameetrit #SBATCH n=4 (väike n), mis ütleb, et vaja on nelja tööd ning SLURM võtab nende jagamise enda hoole alla. Mugavuse huvides on selle kasutamine parem. Rohkem teavet jooksutamisskriptide kohta saab TERE MAAILM! NÄIDE Asume nüüd reaalsete programmide juurde, et tutvustada paralleelprogrammeerimist kasutades teadete edastamise meetodit. Vaatame programmi, mida me jooksutasime ka eelnevalt, et kontrollida, kas keskkond

7 töötab. Programm paikneb kaustas materjalid/helloworld nimega helloworld.py. Lühidalt küsib iga protsess, et milline arvuti teda töötleb ja tema järjekorranumbri ning kirjutab saadud informatsiooni väljundfaili. NB: Tavaliselt pole hea tava kutsuda I/O operatsioone (ehk print lauseid) teistelt protsessidelt kui 0, siin on aga see pedagoogilistel põhjustel. #!/usr/bin/env python # helloworld.py # Impordime vajaliku mpi4py teegi. # Kommunikaatori küsimine # Küsime muutujasse size kogu protsesside arvu. size = comm.get_size() # Küsime muutujasse nimega rank, et mitmes protsess on. Loendamine algab 0st # Küsime nime. name = MPI.Get_processor_name() # Trükime väljundi. print "Tere, Maailm! Protsessi nr: %d kokku protsesse: %d nimega %s.\n" % (rank, size, name) Selleks, et programmi jooksutada, navigeerime esmalt kausta: cd ~/materjalid/helloworld siis jooksutame käsuga sbatch helloworld.sh vastava programmi. Terminali peaks käsu tulemusena ilmuma sarnane tekst, kus number võib olla erinev: Submitted batch job Kui töö on lõpetatud, siis ilmub kausta fail slurm out, mille sisu on meil võimalik vaadata käsuga cat slurm out, kus peaks olema 4 rida teksti, kus protsessid arvudega 0st kuni 3ni trükivad Tere, Maailm! Lahkame nüüd etteantud helloworld.py programmi. Kõigepealt imporditakse vajalik mpi4py teek mpi4py import MPI, mis võimaldab meil kasutada MPI d ehk teadete edastamise liidese võimalusi. viitame kommunikaatorile muutujaga comm. Muutuja comm asemel võime igal pool kasutada ka MPI.COMM_WORLD (nt size = MPI.COMM_WORLD.Get_size()). Kommunikaatorist võib mõelda kui kõiki protsesse hõlmavast hulgast.

8 size = comm.get_size() comm.get_size() tagastab, mitu protsessi üldse kokku on. Ilma skripti muutmata peaks olema tulemuseks siin 4 (mitu protsessi on ülemhulgas). comm.get_rank() tagastab, mitmenda protsessiga tegu on. name = MPI.Get_processor_name() MPI.Get_processor_name() tagastab sõlme nime. ÜLESANNE 1 1) Muuda skripti helloworld.sh nii, et kasutataks kolme sõlme ja igal sõlmel on 4 ülesannet. Et terminalis tekstifaili muuta, saame kasutada programmi nimega nano failinimi ehk praegusel juhul nano helloworld.sh. Muudatuste lõpetamisel vajuta ^x (^ on windowsis CTRL). Kui programm küsib Save modified buffer, siis vajuta Y. Jooksuta nüüd programmi uuesti: sbatch helloworld.sh 2) Mitu rida on nüüd failis? Mitu protsessi jooksis kokku? 3) Miks ei pruugi väljundfailis olev väljund olla protsesside suhtes kasvavas järjekorras? 4) Kirjuta programm, milles iga paarisarvuline protsess teretab ja iga paarituarvuline protsess ütleb head aega. TEADETE EDASTAMINE Eelnevas näites ei toimunud teadete edastamist ega vastuvõtmist. Kõik protsessid jooksid üksteisest peaaegu sõltumatult. Nüüd hakkame aga vaatama, kuidas protsessid üksteisega suhelda saavad. Kommunikaatoril (eelnevas näites ) on olemas meetodid comm.send(data, dest=sihtkohanumber) ja comm.recv(asukohanumber), mida saab vastavalt kasutada sõnumite saatmiseks ja vastuvõtmiseks. Hoiatus: comm.recv() ja comm.send() on blokeeruvad operatsioonid, s.t., et programm jääb recv() juures ootama, kuni protsessilt, millelt ta send i ootab, tuleb send(). Näiteks kui me tahame protsessilt numbriga 0 saata protsessile numbrile 1 muutujas rebane sisalduvaid andmeid, siis on meil vaja järgnevat: 1) Protsess 0 puhul send(rebane, dest=1) 2) Protsess 1 puhul data (või mõni muu nimi) = recv(source=0) Programm oleks seejuuers selline: REBANE # rebane.py

9 # Kui protsessi number on 0, siis saadame muutuja sisuga Mida rebane ütleb protsessile 1. rebane = "Mida rebane ütleb?" print rebane, " ", rank comm.send(rebane, 1) # Kui protsessi number on 1, siis ootame, kuni protsess 0 saadab meile andmeid. elif rank == 1: data = comm.recv(source=0) print data, " ", rank Kui selline programm käivitada kahe protsessiga, siis saame vastuseks: Mida rebane ütleb? 0 Mida rebane ütleb? 1 ÜLESANNE 2 1) Muuta rebane.py programmi nii, et kui see käivitada kolme protsessiga (#SBATCH -n=3) siis saadab teine protsess numbriga 1 veel teksti edasi protsessile numbriga 2. 2) Kui kustutada etteantud programmist rida comm.send(rebane, 1), mis juhtub? (vihje: uurida käsuga squeue -u kasutajanimi. Et oma töö tühistada, saab kasutada käsku scancel töönumber nt scancel ). TSÜKKEL Toome veel ühe lihtsama näite kasutades send() ja recv(). Selles programmis saadab iga protsess järgmisele protsessile teate, tekitades tsükli. Esimene protsess saadab teisele protsessi teate, teine protsess saadab kolmandale,..., viimane protsess saadab tagasi esimesele. # tsykkel.py Fsize = comm.get_size() number = 5

10 print number, rank comm.send(number + 1, dest=rank+1) number = comm.recv(source=size-1) print number, rank else: number = comm.recv(source=rank-1) print number, rank comm.send(number + 1, dest=(rank+1)%size) Vaheküsimus 1: Mida see programm väljundiks annab? TEADETE MÄRGISTAMINE Et olla kindel, et õige teate saatmisoperatsioon jõuab õige vastuvõtmisoperatsioonini (õiges järjekorras) saame me märgistada oma teated numbriga. Et seda teha, saame me send() ja recv() operatsioonil lisada parameetri tag=nr. Nt comm.send(data, dest=1, tag=1) ja comm.recv(source=1, tag=1). MÄRGISTAMINE # tagging.py size = comm.get_size() lause1 = "Lause #1" lause2 = "Lause #2" comm.send(lause1, dest=1, tag=1) comm.send(lause2, dest=1, tag=2) elif rank == 1: lause1 = comm.recv(source=0, tag=1) lause2 = comm.recv(source=0, tag=2) print lause1 print lause2 Selline konstruktsioon tagab, et print lause1 trükib Lause #1 ja print lause2 trükib Lause #2. Ilma märgistamist kasutamata võib lause1 saada Lause #2 ja vastupidi. Teadete märgistamine tuleb kasuks näiteks siis, kui igale protsessile antakse mingi osa kahest massiivist comm.send(massiiv1, dest=1, tag=1) ja comm.send(massiiv2, dest=1, tag=2). Kui nende massiivide peal kavatsetakse teha operatsioone, kus järjekord on tähtis (ehk pole

11 kommutatiivsed, nt a / b!= b / a iga a ja b puhul), siis on tähtis, et õiged andmed satuvad õigesse kohta. Nüüd üks näide natuke keerukamast programmist. JAGAMINE # division.py size = comm.get_size() # Loome massiivid massiiv1 = [i for i in range(size*2)] massiiv2 = [i+1 for i in range(size*2)] # Arvutab osa suuruse osasuurus = len(massiiv1)/size # Saadab töö laiali. Iga protsess saab len(massiiv)/size, ehk praegu 2 elementi. for i in range(1, size): comm.send(massiiv1[i*osasuurus:(i*2)*osasuurus], dest=i, tag=1) comm.send(massiiv2[i*osasuurus:(i*2)*osasuurus], dest=i, tag=2) # Protsess teeb oma töö. osa1 = massiiv1[:osasuurus] osa2 = massiiv2[:osasuurus] tulemus = [] for i in range(len(osa1)): tulemus.append(float(osa1[i])/osa2[i]) # Küsime teistelt töö tagasi. for i in range(1, size): tulemus = tulemus + comm.recv(source=i, tag=3) print tulemus else: # Tag-idega kindlustame, et osa1 on massiiv1'st ja osa2 on massiiv2'st osa1 = comm.recv(source=0, tag=1) osa2 = comm.recv(source=0, tag=2) tulemus = [] for i in range(len(osa1)): tulemus.append(float(osa1[i])/osa2[i])

12 # Saadame tehtud töö tagasi algprotsessile comm.send(tulemus, dest=0, tag=3) Üleval olev programm loob kaks massiivi, mis omavahel jagatakse. Ilma märgistamata võivad tekkida probleemid, nagu näiteks nulliga jagamine ja valed lahendused. Vaheküsimus 2: Miks jookseb sama programm kiiremini ühe protsessi kui mitme protsessi peal? KOLLEKTIIVSED OPERATSIOONID Vahekokkuvõttena oleme praegu läbi vaadanud põhilised operatsioonid send(), recv() ja sellega märgistamine. Ka oleme õppinud looma mõningaid kergemaid programme. Iseenesest võib nende operatsioonide abil luua juba igasuguseid MPI programme, kuid MPI pakub võimalusi, mis võimaldavad efektiivsemat (kiiremat) koodi kirjutada. BARRIER Esimeseks kollektiivseks operatsiooniks on barjäär ehk barrier. Barjäär lubab meil sünkroniseerida erinevate protsesside tegevust. Iga protsess jääb barjääri juurde ootama, kuni kõik protsessid sinna jõuavad. #!/usr/bin/env python # barrier.py print rank comm.barrier() print rank Sellise programmi tulemusena trükib iga protsess väljundfaili kõigepealt oma järjekorranumbri ja kui iga protsess on esimese print lause täitnud, siis lastakse protsessid edasi kindlustatakse, et kõigi protsesside töö on jõudnud sinnamaani. Hoiatus: Kui kasutada barjääri koos tingimuslausetega, siis võib tekkida olukord, kus mõni protsess ei jõuagi sinnamaani, mistõttu võib programmi töö seiskuda. Näiteks: If rank == 0:

13 comm.barrier()... Sellisel juhul jääb protsess 0 sinna barjääri taha kinni. Ainuke võimalus välja saamiseks on siis, kui teised protsessid ka sinnamaani jõuavad, mis antud olukorras on võimatu. BROADCAST Kui meil on vaja anda kõikidele protsessidele samasugused andmed. Üks võimalus on anda esimeselt protsessilt ükshaaval kõigile teistele need andmed. Teine võimalus on kasutada sisseehitatud meetodeid. MPI4PY kommunikaatoril on olemas meetod bcast(data, source=0), mis võtab endale kaks argumenti. Esimene argument data andmed, millest iga protsess saab identse koopia, ja source, et milliselt protsessilt need andmed pärinevad. Broadcast kasutab puul põhinevat algoritmi, mis on tunduvalt kiirem kui algoritm, mis jagab ühelt paljudele. ILMA BROADCASTITA #!/usr/bin/env python # nobroadcast.py size = comm.get_size() data = 1 for i in range(1, size): comm.send(data, dest=i, tag=1) else: data = comm.recv(source=0, tag=1) comm.barrier() print data, "protsessilt", rank BROADCASTIGA #!/usr/bin/env python # broadcast.py size = comm.get_size() # Kõigil protsessidel väljaarvatud järjekorranumbriga 0 andmed puuduvad.

14 data = None data = [1,2,3,4,5,6,7,8,9,10] # Broadcastiga data = comm.bcast(data, root=0) print data Selle programmi töö tulemusena antakse igale protsessile andmed, mis on protsessil järjekorranumbriga 0. data = comm.bcast(data, root=0). Iga protsess print ib töö tulemusena [1,2,3,4,5,6,7,8,9,10]. SCATTER JA GATHER Scatter ja gather on põhimõtteliselt vastandlikud operatsioonid, mis on mõeldud ühelt protsessilt teistele protsessidele andmete jaotamiseks ja tagasi kokku kogumiseks. SCATTER Scatter jaotab andmed kõikide kommunikaatori küljes olevatele protsessidele laiali. Näiteks, kui meil on andmed massiivis [1,2,3,4,5] ja meil on 5 protsessi, siis protsessid saavad endale järjest 1, 2, 3, 4 ja 5. Scatter tahab, et andmemassiivis oleks täpselt sama palju elemente, kui on protsesse, millele neid jaotatakse. Näiteks, kui meil on rohkem andmeid kui protsesse, siis tuleks andmed jagada tükkideks, ning siis need tükkidena edasi anda. Kui meil on 2 protsessi ja meil on massiiv [1,2,3,4,5] siis enne scatter i tegemist tuleks nad viia kujule [[1,2,3], [4,5]] ja siis protsess järjekorranumbriga 0 omandab [1,2,3] ja protsess järjekorranumbriga 1 omandab endale [4,5] GATHER Gather kogub kõikidelt protsessidelt andmed kokku. Näiteks kui protsessidel on järgnevalt 5, 4, 3, 2, 1 siis protsess, millele kutsutakse gather välja, omandab endale andmed [5,4,3,2,1]. Vaatame eelnevalt kirjeldatud operatsioonide kohta näidet: SCATTER JA GATHER NÄIDE #!/usr/bin/env python # scattergather.py size = comm.get_size() # Kõigil protsessidel väljaarvatud järjekorranumbriga 0 andmed puuduvad. data = None # Loome protsessil järjekorranumbriga 0 massiivi, mis on pikkusega size (ehk protsesside arv)

15 data = [i*2 for i in range(size)] print "algsed andmed", data data = comm.scatter(data, root=0) # Lahutame k6igil protsessidel saadud andmetest maha 1 data = data - 1 # Saadame töödeldud andmed tagasi. Protsess 0 saab endale töödeldud andmed. data = comm.gather(data, root=0) print "lõplikud andmed", data Programm tekitab protsessil järjekorranumbriga 0 massiivi, mis on protsesside arvuga sama pikk. Siis jaotab programm andmed kõigile protsessidele laiali ja iga protsess lahutab andmetest 1. Lõpptulemusena saadakse väljund: algsed andmed [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22] lõplikud andmed [-1, 1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21] ÜLESANNE 3 1) Muuta Scatter ja Gather programmi nii, et massiivi pikkus on kaks korda suurem kui protsesside arv. Vihje: kuna scatter operatsioon peab saama andmetemassiivina argumendiks sama palju andmeid, kui on protsesse, siis tuleb andmed jaotada paaridesse. 2) Miks on kollektiivsete operatsioonide kasutamine kasulikum kui need operatsioonid ise teha? 3) Uurida broadcasti kohta, et miks on broadcast kiirem kui esimeselt protsessilt ükshaaval teistele saatmine. 4) Millistes uurimisvaldkondades kasutatakse hajusarvutusi? MUUD OPERATSIOONID Reduce on kollektiivne operatsioon, mis kogub kõigilt protsessidelt, mis on kommunikaatoriga ühendatud, andmed kokku ja teeb nendega vastavat operatsiooni. Näiteks kui igal protsessil on üks täisarv, siis kasutades näiteks reduce() operatsiooni on võimalik kõik need arvud üheks kokku liita. Näiteks on 3 protsessi. Neil on vastavalt arvud 1, 2 ja 3. Siis kasutades reduce operatsiooni ja tahtes liita, liidab reduce operatsioon need = 6 ja tagastab sellele ühele protsessile. Allreduce on selline kollektiivne operatsioon, mis kogub kõikidelt protsessidelt andmed kokku, teeb nendega mingi tehte ja siis saadab tulemuse kõikidele protsessidele tagasi. Ehk siis ülevalpool arvutatud 6 saadetakse kõikidele protsessidele. Neid operatsioone ei hakka siinkohal lähemalt lahkama, aga kui on soovi, siis saab nende kohta uurida siit. EFEKTIIVSEM MPI4PY

16 Üleval pool kasutatud kollektiivsed operatsioonid töötavad kõigi Pythoni objektidega, aga need ei ole jõudluse kohalt kõige efektiivsemad. Selleks, et kirjutada efektiivset Pythoni MPI programmi, oleks tarvilik kasutada näiteks NumPy objekte. NumPy on Pythoni laiendus, mis lubab efektiivselt teha erinevaid tehteid massiivide, maatriksitega jne. Selle kohta saab samuti rohkem lugeda PROGRAMMIDE KIIRUSE MÕÕTMINE MPI4PY programmide efektiivsust on võimalik mõõta näiteks käsitsi, lisades koodiosadesse erinevaid taimereid. Üks meetod, mis lubab seda teha, on WTime() wt = MPI.Wtime() ProgrammiOsa. wt = MPI.Wtime() - wt print wt LAHENDUSED 1.1. helloworld.sh muuta #SBATCH -N 2 -> #SBATCH -N 3 ja #SBATCH --ntasks-per-node=2 -> #SBATCH --ntasksper-node= rida Tere, Maailm!.. jne 1.3. Kuna mõni protsess võib lõppeda enne teist protsessi (näiteks võib mõni arvuti olla kiirem kui mõni teine), siis ei pruugi olla faili trükitud tekstid arvude suhtes kasvavas järjekorras #!/usr/bin/env python # helloworld.py # Importime vajaliku mpi4py teegi. if rank % 2 == 0: print "Tere, Maailm! Protsessi nr: %d \n" % (rank) else: print "Head aega, Maailm! Protsessi nr: %d \n" % (rank) 2.1. Saame programmi alguses küsida size = comm.get_size() ja sellele vastavalt kasutada if lauseid. Üks lahendus on näiteks selline: # rebane.py

17 size = comm.get_size() data = "Mida rebane ütleb?" print data, rank comm.send(data, dest=1) elif rank == 1: data = comm.recv(source = 0) print data, rank if size > 2: comm.send(data, dest = 2) elif size > 2 and rank == 2: data = comm.recv(source = 1) print data, rank 2.2. Programm jääb rea comm.recv(source=0) peal lõputult ootama #!/usr/bin/env python # scatterjagather2.py size = comm.get_size() # Kõigil protsessidel väljaarvatud järjekorranumbriga 0 andmed puuduvad. data = None # Loome protsessil järjekorranumbriga 0 massiivi, mis on pikkusega size (ehk protsesside arv) algandmed = [i*2 for i in range(size*2)] data = [] for i in range(0, len(algandmed), 2): data.append([algandmed[i]]+[algandmed[i+1]]) print "algsed andmed", algandmed data = comm.scatter(data, root=0) # Lahutame k6igil protsessidel saadud andmetest maha 1 for i in range(len(data)): data[i] = data[i] - 1

18 # Saadame töödeldud andmed tagasi. Protsess 0 saab endale töödeldud andmed. data = comm.gather(data, root=0) tulemus = [y for x in data for y in x] print "lõplikud andmed", tulemus 3.2. Kuna kollektiivsed operatsioonid kasutavad endas keerulisemaid algoritme, mis on keerukuselt efektiivsemad Kasutatakse puualgoritmi, mis on asümptootiliselt parema efektiivsusega algoritm. Vaheküsimus 1: Järjest arvud alates 5, 6 kuni protsesside arvuni. Iga numbri kõrval protsessi järjekorranumber. Vaheküsimus 2: Kuna teistele protsessidele andmete andmineteadete teel tekitab ajakulu seetõttu on LISA JA KASUTATUD MATERJAL Hajusarvutus: OpenMPI koduleht: MPI4PY dokumentatsioon: Python 2 ja Python 3 süntaksi erinevused: MPI kohta hea õpetus: Materjalina on kasutatud Indrek Jentson i tööd nimega Paralleelarvutuste programmeerimine keeles Python. Sealt on võimalik ka lugeda estnltk abil tekstitöötlemise kohta High Performance Center: Kasulikke MPI4PY näiteprogramme leiab aadressilt:

Failiotsing: find paljude võimalustega otsingukäsk find kataloog tingimused kataloog - otsitakse sellest kataloogist ja tema alamkataloogidest tingimu

Failiotsing: find paljude võimalustega otsingukäsk find kataloog tingimused kataloog - otsitakse sellest kataloogist ja tema alamkataloogidest tingimu Failiotsing: find paljude võimalustega otsingukäsk find kataloog tingimused kataloog - otsitakse sellest kataloogist ja tema alamkataloogidest tingimused: faili nimi faili vanus faili tüüp... 1 Failiotsing:

Rohkem

Microsoft Word - TallinnLV_lihtsustatud_manual_asutuse_juhataja_ doc

Microsoft Word - TallinnLV_lihtsustatud_manual_asutuse_juhataja_ doc Tallinna Linnavalitsuse sõnumisaatja kasutusjuhend asutuse juhatajale Sisukord 1. Süsteemi sisenemine...2 2. Parooli lisamine ja vahetamine...2 3. Ametnike lisamine ametiasutuse juurde...2 4. Saatjanimede

Rohkem

E-arvete juhend

E-arvete juhend E- arvete seadistamine ja saatmine Omniva kaudu Standard Books 7.2 põhjal Mai 2015 Sisukord Sissejuhatus... 3 Seadistamine... 3 Registreerimine... 4 E- arve konto... 5 Vastuvõtu eelistus... 5 Valik E-

Rohkem

Programmi AnimatorDV Simple+ lühike kasutajajuhend

Programmi AnimatorDV Simple+ lühike kasutajajuhend Programmi AnimatorDV Simple+ esmane kasutusjuhend Programm AnimatorDV Simple+ on mõeldud animatsioonide loomiseks. Tegemist on tasuta tarkvaraga, mis töötab videoseadmetega (videokaamera, veebikaamera).

Rohkem

Elisa Ring Elisa Ringi mobiilirakendus Versioon

Elisa Ring Elisa Ringi mobiilirakendus Versioon Elisa Ring Elisa Ringi mobiilirakendus Versioon 1.0.85 15.01.2019 1 Elisa Ring... 1 1. Ülevaade... 3 1.1. Kirjeldus... 3 1.2. Tehnilised tingimused... 3 1.3. Kasutuselevõtt ja sisselogimine... 3 2. Rakenduse

Rohkem

MS Word Sisukord Uue dokumendi loomine... 2 Dokumendi salvestamine... 3 Faili nimi... 4 Teksti sisestamine... 6 Klaviatuuril mitteleiduvat sümbolite l

MS Word Sisukord Uue dokumendi loomine... 2 Dokumendi salvestamine... 3 Faili nimi... 4 Teksti sisestamine... 6 Klaviatuuril mitteleiduvat sümbolite l MS Word Sisukord Uue dokumendi loomine... 2 Dokumendi salvestamine... 3 Faili nimi... 4 Teksti sisestamine... 6 Klaviatuuril mitteleiduvat sümbolite lisamine... 6 Uue dokumendi loomine Dokumendi salvestamine

Rohkem

SAF 7 demo paigaldus. 1.Eeldused SAF 7 demo vajab 32- või 64-bitist Windows 7, Window 8, Windows 10, Windows Server 2008 R2, Windows Server 2012, Wind

SAF 7 demo paigaldus. 1.Eeldused SAF 7 demo vajab 32- või 64-bitist Windows 7, Window 8, Windows 10, Windows Server 2008 R2, Windows Server 2012, Wind SAF 7 demo paigaldus. 1.Eeldused SAF 7 demo vajab 32- või 64-bitist Windows 7, Window 8, Windows 10, Windows Server 2008 R2, Windows Server 2012, Windows Server 2012 R2, Windows Server 2016 või Windows

Rohkem

Loeng03

Loeng03 Loeng 03 Failiõigused ja -manipulatsioon Operatsioonisüsteemide administreerimine ja sidumine I233 Katrin Loodus, Tallinn 2015 Failid ja kataloogid Mis on fail? Linuxi laadsetes süsteemides on kõik failid

Rohkem

Juhend nutiterminali seadistamiseks ja kaardimaksete vastuvõtmiseks Ingenico Link/2500 ja icmp

Juhend nutiterminali seadistamiseks ja kaardimaksete vastuvõtmiseks Ingenico Link/2500 ja icmp Juhend nutiterminali seadistamiseks ja kaardimaksete vastuvõtmiseks Ingenico Link/2500 ja icmp Terminali seadistamine Lülita telefonis või tahvelarvutis (edaspidi telefonis) sisse Bluetooth. (1) 1 1 Mudel

Rohkem

Müük (Microsoft Dynamics AX (Axapta) tarkvara) Paigaldusjuhend bifree.ee qlik.com

Müük (Microsoft Dynamics AX (Axapta) tarkvara) Paigaldusjuhend bifree.ee qlik.com Müük (Microsoft Dynamics AX (Axapta) tarkvara) Paigaldusjuhend bifree.ee qlik.com Microsoft Dynamics AX (Axapta) tarkvara 2 Seadistamise etapid 1. Laadige alla ja installeerige Qlik Sense Desktop. 2. Laadige

Rohkem

Excel Valemite koostamine (HARJUTUS 3) Selles peatükis vaatame millistest osadest koosnevad valemid ning kuidas panna need Excelis kirja nii, et

Excel Valemite koostamine (HARJUTUS 3) Selles peatükis vaatame millistest osadest koosnevad valemid ning kuidas panna need Excelis kirja nii, et Excel2016 - Valemite koostamine (HARJUTUS 3) Selles peatükis vaatame millistest osadest koosnevad valemid ning kuidas panna need Excelis kirja nii, et programm suudaks anda tulemusi. Mõisted VALEM - s.o

Rohkem

Hoia oma arvuti turvaline ja kiire 1.Leia start nupust alustades Juhtpaneel 2.Juhtpaneeli aadressiribalt leia Kõik juhtpaneeli üksused 3.Avanenud tööa

Hoia oma arvuti turvaline ja kiire 1.Leia start nupust alustades Juhtpaneel 2.Juhtpaneeli aadressiribalt leia Kõik juhtpaneeli üksused 3.Avanenud tööa Hoia oma arvuti turvaline ja kiire 1.Leia start nupust alustades Juhtpaneel 2.Juhtpaneeli aadressiribalt leia Kõik juhtpaneeli üksused 3.Avanenud tööaknas leia Windows Update 4.Lase arvutil kontrollida

Rohkem

MTAT Operatsioonisüsteemid - Turvalisus

MTAT Operatsioonisüsteemid - Turvalisus Regulaaravaldised ja skriptimine Windows ja UNIX operatsioonisüstemides WINDOWS 1. slaid Windows käsurida Käsureaks nimetan programme: cmd.exe powershell.exe command.com Nendesse saab kirjutada käske,

Rohkem

Kom igang med Scratch

Kom igang med Scratch Alustame algusest Getting Started versioon 1.4 SCRATCH on uus programmeerimiskeel, mis lubab sul endal luua interaktiivseid annimatsioone, lugusid, mänge, muusikat, taieseid jm Scratch'i saab kasutada

Rohkem

Microsoft Word - Vx610 EMV KASUTUSJUHEND.doc

Microsoft Word - Vx610 EMV KASUTUSJUHEND.doc MAKSETERMINALI KASUTUSJUHEND VERIFONE Vx610 GSM Kliendiabi: (0) 6711 444 (kõik nädalapäevad 24 h) Makseterminalide osakond: (0) 6711 411 (tööpäeviti kell 9.00 17.00) Faks: (0) 6711 420 Email: posgrupp@estcard.ee

Rohkem

PowerPointi esitlus

PowerPointi esitlus Regulaaravaldised ja skriptimine Windows ja UNIX operatsioonisüsteemides WINDOWS 1. slaid Windows käsurida Käsureaks nimetan programme: cmd.exe powershell.exe Nendesse saab kirjutada käske, millega näiteks

Rohkem

Operatsioonisüsteemide ehitus

Operatsioonisüsteemide ehitus Lõimed Ülevaade Lõime mõiste Lõimede mudelid Probleemid lõimedega seoses Pthreads Solarise lõimed Windows 2000 lõimed Linuxi lõimed Java lõimed VARMO VENE & MEELIS ROOS 2 Ühe- ja mitmelõimelised protsessid

Rohkem

Funktsionaalne Programmeerimine

Funktsionaalne Programmeerimine Kõrvalefektid ja Haskell Kõik senised programmid on olnud ilma kõrvalefektideta; so. puhtalt funktsionaalsed. Programmi täitmise ainsaks efektiks on tema väartus. Osade ülesannete jaoks on kõrvalefektid

Rohkem

StandardBooks_versiooni_uuendusWin

StandardBooks_versiooni_uuendusWin Versiooni uuendamine Standard Books 7.2 põhjal Windows 7 või uuemale operatsioonisüsteemile SISUKORD 1. ÜKSIKKASUTAJA VERSIOONI INSTALLEERIMINE...lk 2 2. SERVER/MITMEKASUTAJA VERSIOONI INSTALLEERIMINE.lk

Rohkem

MTAT Operatsioonisüsteemid - Turvalisus

MTAT Operatsioonisüsteemid - Turvalisus Regulaaravaldised ja skriptimine Windows ja UNIX operatsioonisüstemides WINDOWS 1. slaid Windows käsurida Käsureaks nimetan programme: cmd.exe powershell.exe command.com (tänapäevastes OS ei kasutata)

Rohkem

Õppematerjalide esitamine Moodle is (alustajatele) seminar sarjas Lõunatund e-õppega 12. septembril 2017 õppedisainerid Ly Sõõrd (LT valdkond) ja Dian

Õppematerjalide esitamine Moodle is (alustajatele) seminar sarjas Lõunatund e-õppega 12. septembril 2017 õppedisainerid Ly Sõõrd (LT valdkond) ja Dian Õppematerjalide esitamine Moodle is (alustajatele) seminar sarjas Lõunatund e-õppega 12. septembril 2017 õppedisainerid Ly Sõõrd (LT valdkond) ja Diana Lõvi (SV valdkond) Järgmised e-lõunad: 10. oktoober

Rohkem

Linux süsteemi administreerimine

Linux süsteemi administreerimine Protsesside, mälu jm haldamine Linuxi ehitus (struktuur) Lihtsustatult Protsess Multitasking - palju protsesse töötab paralleelselt Tuumas asub protsesside tabel igal protsessil on identifikaator PID igal

Rohkem

ArcGIS Online Konto loomine Veebikaardi loomine Rakenduste tegemine - esitlus

ArcGIS Online Konto loomine Veebikaardi loomine Rakenduste tegemine - esitlus PILVI TAUER Tallinna Tehnikagümnaasium ArcGIS Online 1.Konto loomine 2.Veebikaardi loomine 3.Rakenduste tegemine - esitlus Avaliku konto loomine Ava ArcGIS Online keskkond http://www.arcgis.com/ ning logi

Rohkem

Microsoft Word - installation-guide.doc

Microsoft Word - installation-guide.doc Dokumendi ajalugu: Versioon Kuupäev Tegevus Autor 1.0 12.04.2008 Dokumendi loomine Maris Aavik 1.1 13.04.2008 Täiendamine Maris Aavik 1.2 13.04.2008 Täiendamine Andres Kalle 1.3 12.05.2008 Täiendused Kerli

Rohkem

Mida räägivad logid programmeerimisülesande lahendamise kohta? Heidi Meier

Mida räägivad logid programmeerimisülesande lahendamise kohta? Heidi Meier Mida räägivad logid programmeerimisülesande lahendamise kohta? Heidi Meier 09.02.2019 Miks on ülesannete lahendamise käigu kohta info kogumine oluline? Üha rohkem erinevas eas inimesi õpib programmeerimist.

Rohkem

Microsoft Word - Referaat.docx

Microsoft Word - Referaat.docx Tartu Ülikool Andmeturve Referaat teemal: CVE-2016-1499 Koostaja: Sander Sats Kursus: Informaatika Tartu 2016 Sissejuhatus Käesolev referaat on kirjutatud seoses Tartu Ülikooli kursuse MTAT.03.134 Andmeturve

Rohkem

SINU UKS DIGITAALSESSE MAAILMA Ruuter Zyxel LTE3302 JUHEND INTERNETI ÜHENDAMISEKS

SINU UKS DIGITAALSESSE MAAILMA Ruuter Zyxel LTE3302 JUHEND INTERNETI ÜHENDAMISEKS SINU UKS DIGITAALSESSE MAAILMA Ruuter Zyxel LTE3302 JUHEND INTERNETI ÜHENDAMISEKS OLULINE TEAVE: LOE ENNE RUUTERI ÜHENDAMIST! Ruuter on sinu uks digitaalsesse maailma. Siit saavad alguse kõik Telia teenused

Rohkem

KASUTUSJUHEND

KASUTUSJUHEND KASUTUSJUHEND Sissejuhatus Kui valvesüsteem on valvessepanekuks valmis ning puuduvad rikke- ning häireteated, kuvatakse sõrmistiku displeil kellaaeg, kuupäev ning tekst Enter Your Code sisestage kood Peale

Rohkem

Tarkvaraline raadio Software defined radio (SDR) Jaanus Kalde 2017

Tarkvaraline raadio Software defined radio (SDR) Jaanus Kalde 2017 Tarkvaraline raadio Software defined radio (SDR) Jaanus Kalde 2017 Sissejuhatus Raadiosidest üldiselt Tarkvaraline raadio Kuidas alustada 2 Raadioside Palju siinussignaale õhus Info edastamiseks moduleerid

Rohkem

1. Üliõpilased 1.1 Tõendid Vali menüüst: Üliõpilased tõendid tõendite trükkimine. Avaneb vorm Tõendite trükkimine, vali tõendi liik Tõend õppim

1. Üliõpilased 1.1 Tõendid Vali menüüst: Üliõpilased tõendid tõendite trükkimine. Avaneb vorm Tõendite trükkimine, vali tõendi liik Tõend õppim 1. Üliõpilased 1.1 Tõendid Vali menüüst: Üliõpilased tõendid tõendite trükkimine. Avaneb vorm Tõendite trükkimine, vali tõendi liik. 1.1.1 Tõend õppimise kohta TLÜ-s Seda tõendiliiki saab väljastada ainult

Rohkem

MAKSETERMINALI KASUTUSJUHEND

MAKSETERMINALI KASUTUSJUHEND MAKSETERMINALI KASUTUSJUHEND DESK/3200 Kliendiabi: 6711 444 (kõik nädalapäevad 24 h) Makseterminalide osakond: 6711 411 (tööpäeviti kell 9.00 17.00) Faks: 6 711 420 e-mail: posgrupp@estcard.ee N e t s

Rohkem

Outlookist dokumendi registreerimine Plugina seadistamine Dokumendi registreerimine Outlookist Vastusdokumendi registreerimine Outlookist Outlooki plu

Outlookist dokumendi registreerimine Plugina seadistamine Dokumendi registreerimine Outlookist Vastusdokumendi registreerimine Outlookist Outlooki plu Outlookist dokumendi registreerimine Plugina seadistamine Dokumendi registreerimine Outlookist Vastusdokumendi registreerimine Outlookist Outlooki plugina ikoon on kadunud Outlooki kasutajad saavad dokumente

Rohkem

G aiasoft Programmi VERP ja Omniva Arvekeskuse liidese häälestamine ja arvete saatmine-lugemine VERP 6.3 ja VERP 6.3E Versioon ja hilisemad K

G aiasoft Programmi VERP ja Omniva Arvekeskuse liidese häälestamine ja arvete saatmine-lugemine VERP 6.3 ja VERP 6.3E Versioon ja hilisemad K Programmi VERP ja Omniva Arvekeskuse liidese häälestamine ja arvete saatmine-lugemine VERP 6.3 ja VERP 6.3E Versioon 6.3.1.51 ja hilisemad Kasutaja juhend 2016 Sisukord 1. Sissejuhatus...3 2. Liidese häälestus...3

Rohkem

GRUPI-SMS Veebirakenduse kasutamise juhend Rakendus Elisa grupi-smsi rakendus Väljaandja Elisa Eesti AS Juhendi koostamise kuupäev Versioon

GRUPI-SMS Veebirakenduse kasutamise juhend Rakendus Elisa grupi-smsi rakendus Väljaandja Elisa Eesti AS Juhendi koostamise kuupäev Versioon GRUPI-SMS Veebirakenduse kasutamise juhend Rakendus Elisa grupi-smsi rakendus Väljaandja Elisa Eesti AS Juhendi koostamise kuupäev 05.02.2018 Versiooni kuupäev 30.01.2018 1 SISUKORD 1. ÜLEVAADE... 3 1.1

Rohkem

Skriptimiskeeli, mida ei käsitletud Perl Python Visual Basic Script Edition (VBScript) MS DOS/cmd skriptid Windows PowerShell midagi eksootilisemat: G

Skriptimiskeeli, mida ei käsitletud Perl Python Visual Basic Script Edition (VBScript) MS DOS/cmd skriptid Windows PowerShell midagi eksootilisemat: G Skriptimiskeeli, mida ei käsitletud Perl Python Visual Basic Script Edition (VBScript) MS DOS/cmd skriptid Windows PowerShell midagi eksootilisemat: GIMP Script-Fu 1 Skriptimiskeeli: Perl v1.0 loodud Larry

Rohkem

Tartu Ülikool

Tartu Ülikool Tartu Ülikool Code coverage Referaat Koostaja: Rando Mihkelsaar Tartu 2005 Sissejuhatus Inglise keelne väljend Code coverage tähendab eesti keeles otse tõlgituna koodi kaetust. Lahti seletatuna näitab

Rohkem

Praks 1

Praks 1 Biomeetria praks 3 Illustreeritud (mittetäielik) tööjuhend Eeltöö 1. Avage MS Excel is oma kursuse ankeedivastuseid sisaldav andmestik, 2. lisage uus tööleht, 3. nimetage see ümber leheküljeks Praks3 ja

Rohkem

P2P süsteemid

P2P süsteemid Gnutella Ajalugu Detsentraliseeritus Protokollist Paralleliseerimine Ujutamine Skaleeruvus Ultranoded Puuräsid DHT Muud MEELIS ROOS 1 Ajalugu Failivahetus P2P massidesse viija Napster tsentraalne süsteem

Rohkem

RIQASNet

RIQASNet RIQASNet Kasutusjuhend Tutvustus RIQASNet on veebipõhine andmete sisestamise süsteem, mis võimaldab kasutajatel saata tulemusi ja meetodi muutusi RIQAS ele ning samas vaadata ka raporteid. RIQASNet võimaldab

Rohkem

Microsoft Word - ref - Romet Piho - Tutorial D.doc

Microsoft Word - ref - Romet Piho - Tutorial D.doc Tartu Ülikool Andmetöötluskeel "Tutorial D" realisatsiooni "Rel" põhjal Referaat aines Tarkvaratehnika Romet Piho Informaatika 2 Juhendaja Indrek Sander Tartu 2005 Sissejuhatus Tänapäeval on niinimetatud

Rohkem

KOTKAS AVE kasutajakeskne juhend Loomise Muutmise kuupäev: kuupäev: Versioon: 2.0 Klient: Keskkonnaministeeriumi Infotehno

KOTKAS AVE kasutajakeskne juhend Loomise Muutmise kuupäev: kuupäev: Versioon: 2.0 Klient: Keskkonnaministeeriumi Infotehno Loomise 22.09.2015 Muutmise 10.10.2018 kuupäev: kuupäev: Versioon: 2.0 Klient: Keskkonnaministeeriumi Infotehnoloogiakeskus Projekt: Keskkonnaotsuste terviklik autonoomne süsteem (KOTKAS) Dokument: AVE

Rohkem

Tiia Salm 2011 Online kirjastus CALAMÉO Calameo kujutab endast on-line kirjastust, mis võimaldab oma dokumente avaldada e-raamatuna tasuta. Failid (Pd

Tiia Salm 2011 Online kirjastus CALAMÉO Calameo kujutab endast on-line kirjastust, mis võimaldab oma dokumente avaldada e-raamatuna tasuta. Failid (Pd Online kirjastus CALAMÉO Calameo kujutab endast on-line kirjastust, mis võimaldab oma dokumente avaldada e-raamatuna tasuta. Failid (Pdf, Word, Excel, PowerPoint, Open Office) tuleb esmalt keskkonda üles

Rohkem

SQL

SQL SQL Teine loeng Mõtelda CREATE TABLE ( { INTEGER VARCHAR(10)} [ NOT NULL] ); Standard SQL-86 (ANSI X3.135-1986), ISO võttis üle 1987 SQL-89 (ANSIX3.135-1989) SQL-92 (ISO/IEC 9075:1992)

Rohkem

HAJUSSÜSTEEMID HAJUSSÜSTEEMID Kaugprotseduurid IDL kompileerimine ONCIDLnäide CORBAIDLnäide MIDLnäide DCERPCmuidomadusi XML-RPC JSON-RPC REST document

HAJUSSÜSTEEMID HAJUSSÜSTEEMID Kaugprotseduurid IDL kompileerimine ONCIDLnäide CORBAIDLnäide MIDLnäide DCERPCmuidomadusi XML-RPC JSON-RPC REST document Kaugprotseduurid IDL kompileerimine ONCIDLnäide CORBAIDLnäide MIDLnäide DCERPCmuidomadusi XML-RPC JSON-RPC REST document.idl IDL kompilaator document_cstub.o document.h document_sstub.o #include document_client.c

Rohkem

1 / loeng Tekstitöötlus Sisend/väljund Teksti lugemine Sõnad

1 / loeng Tekstitöötlus Sisend/väljund Teksti lugemine Sõnad 1 / 16 7. loeng Tekstitöötlus Sisend/väljund Teksti lugemine Sõnad 2 / 16 Sisend/väljund vaikimisi: Termid: read, write?-read(x). : 2+3. X = 2+3.?-write(2+3). 2+3 true. Jooksva sisendi vaatamine: seeing?-

Rohkem

Pealkiri

Pealkiri Andmebaasid (6EAP) I praktikum Mida praktikumides tehakse? Õpitakse SQL i Tehakse andmebaas ope (igas praktikumis natuke, kuni lõpuks saab valmis) Tehakse andmebaas edu (kui ope on valmis, tehakse edu,

Rohkem

Pealkiri

Pealkiri Andmebaasid II praktikum Andmebaaside administreerimine Andmete sisestamine KESKKOND, KASUTAJAD, ÕIGUSED Mõisted Tabelid, vaated, trigerid, jpm on objektid Objektid on grupeeritud skeemi Skeemid moodustavad

Rohkem

Operatsioonisüsteemi ülesanded

Operatsioonisüsteemi ülesanded Praktikum 2 OPERATSIOONISÜSTEEMIDE MASSPAIGALDUS Operatsioonisüsteemide masspaigaldus Suure arvu arvutisüsteemide korral ei ole mõistlik operatsioonisüsteeme paigaldada manuaalselt. Operatsioonisüsteemide

Rohkem

EBSCO täistekstiandmebaaside kasutamine Otsingu sooritamiseks: 1. Logi sisse 2. Vali EBSCOhost Web 3. Seejärel vali andmebaas, milles soovid otsingut

EBSCO täistekstiandmebaaside kasutamine Otsingu sooritamiseks: 1. Logi sisse 2. Vali EBSCOhost Web 3. Seejärel vali andmebaas, milles soovid otsingut EBSCO täistekstiandmebaaside kasutamine Otsingu sooritamiseks: 1. Logi sisse 2. Vali EBSCOhost Web 3. Seejärel vali andmebaas, milles soovid otsingut sooritada. Andmebaasid on temaatilised. Koolitööde

Rohkem

Andmed arvuti mälus Bitid ja baidid

Andmed arvuti mälus Bitid ja baidid Andmed arvuti mälus Bitid ja baidid A bit about bit Bitt, (ingl k bit) on info mõõtmise ühik, tuleb mõistest binary digit nö kahendarv kahe võimaliku väärtusega 0 ja 1. Saab näidata kahte võimalikku olekut

Rohkem

KIIRJUHEND Lugege kiirjuhend enne seadme kasutamist hoolikalt läbi. Kõik tärniga (*) märgitud juhised kehtivad WLAN + 3G mudelitele (Lenovo B6000-H(V)

KIIRJUHEND Lugege kiirjuhend enne seadme kasutamist hoolikalt läbi. Kõik tärniga (*) märgitud juhised kehtivad WLAN + 3G mudelitele (Lenovo B6000-H(V) KIIRJUHEND Lugege kiirjuhend enne seadme kasutamist hoolikalt läbi. Kõik tärniga (*) märgitud juhised kehtivad WLAN + 3G mudelitele (Lenovo B6000-H(V) / Lenovo B8000-H). Tehnilised andmed Mudeli nimetus

Rohkem

FRESENIUS ÕPPEKESKUS KIIRJUHEND

FRESENIUS ÕPPEKESKUS KIIRJUHEND FRESENIUS ÕPPEKESKUS KIIRJUHEND SISUKORD 1. Kuidas saan Freseniuse õppekeskuksesse? 03 2. Kuidas sisse logida? 04 3. Mida teha, kui ma ei mäleta oma parooli? 05 4. Mida leian kodulehelt pärast sisselogimist?

Rohkem

Microsoft Word - requirements.doc

Microsoft Word - requirements.doc Dokumendi ajalugu: Versioon Kuupäev Tegevus Autor 1.0 04.03.2008 Dokumendi loomine Madis Abel 1.1 09.03.2008 Kasutuslugude loomine Madis Abel 1.2 12.03.2008 Kasutuslugude täiendused Andres Kalle 1.3 13.03.2008

Rohkem

Väärtusta oma vabadust. Eesti Yale Seifide Kasutusjuhend Mudelid: YSB/200/EB1 YSB/250/EB1 YSB/400/EB1 YLB/200/EB1 YSM/250/EG1 YSM/400/EG1 YSM/520/EG1

Väärtusta oma vabadust. Eesti Yale Seifide Kasutusjuhend Mudelid: YSB/200/EB1 YSB/250/EB1 YSB/400/EB1 YLB/200/EB1 YSM/250/EG1 YSM/400/EG1 YSM/520/EG1 Väärtusta oma vabadust. Eesti Yale Seifide Kasutusjuhend Mudelid: YSB/200/EB1 YSB/250/EB1 YSB/400/EB1 YLB/200/EB1 YSM/250/EG1 YSM/400/EG1 YSM/520/EG1 YLM/200/EG1 Soovitame selle kasutusjuhendi alles hoida.

Rohkem

Microsoft Word - VOTA_dok_menetlemine_OIS_ doc

Microsoft Word - VOTA_dok_menetlemine_OIS_ doc Varasemate õpingute ja töökogemuse arvestamine (VÕTA ) dokumentide menetlemise protsess ÕISis Koostanud: Ele Hansen Ele Mägi Tartu 2012 1. Aine ülekandmine-õppekavajärgne aine Varasemalt sooritatud aine

Rohkem

Makseterminali Ingenico iwl220 kasutusjuhend 1

Makseterminali Ingenico iwl220 kasutusjuhend 1 Makseterminali Ingenico iwl220 kasutusjuhend 1 Käesolev Makseterminali kasutusjuhend on Kaupmehele abiks kindlustamaks kaardimaksete turvaline vastuvõtmine läbi Makseterminali. Juhend on Maksekaartide

Rohkem

Taskuprinter KASUTUSJUHEND

Taskuprinter KASUTUSJUHEND Taskuprinter KASUTUSJUHEND Täname, et ostsite taskuprinteri Polaroid Mint. Käesoleva kasutusjuhendi eesmärk on anda teile juhiseid toote ohutuks kasutamiseks ja et see ei kujutaks endast kasutajale mingit

Rohkem

Microsoft Word - EHR.docx

Microsoft Word - EHR.docx earvekeskus E-ARVE TELLIMUSTE JUHEND 1 Sisukord E-arvete tellimused... 3 Klientide tellimused... 3 E-arve tellimuse lisamine... 3 E-arve tellimuse muutmine... 9 Minu tellimused... 10 Minu tellimuse sisestamine...

Rohkem

Estonian_TBW-106UB(V1).cdr

Estonian_TBW-106UB(V1).cdr Lühike paigaldusjuhend TBW-106UB H/W: V1 Sisukord... 1 1. Enne alustamist... 1 2. Kuidas paigaldada... 3. Bluetooth adapteriseadistamine... 2 5 Tõrkeotsing... 7 Version 02.17.2009 1. Enne alustamist Pakendi

Rohkem

Microsoft Word - 56ylesanded1415_lõppvoor

Microsoft Word - 56ylesanded1415_lõppvoor 1. 1) Iga tärnike tuleb asendada ühe numbriga nii, et tehe oleks õige. (Kolmekohaline arv on korrutatud ühekohalise arvuga ja tulemuseks on neljakohaline arv.) * * 3 * = 2 * 1 5 Kas on õige, et nii on

Rohkem

CPA4164 USB 2.0 kõrgekvaliteediline videoadapter KASUTUSJUHEND 1. PEATÜKK - Ülevaade 1.1 Tutvustus CPA4164 USB 2.0 videoadapter võimaldab teil arvutis

CPA4164 USB 2.0 kõrgekvaliteediline videoadapter KASUTUSJUHEND 1. PEATÜKK - Ülevaade 1.1 Tutvustus CPA4164 USB 2.0 videoadapter võimaldab teil arvutis CPA4164 USB 2.0 kõrgekvaliteediline videoadapter KASUTUSJUHEND 1. PEATÜKK - Ülevaade 1.1 Tutvustus CPA4164 USB 2.0 videoadapter võimaldab teil arvutisse laadida ja redigeerida erinevatest analoogvideo

Rohkem

Microsoft PowerPoint - EMCS13

Microsoft PowerPoint - EMCS13 EMCS piloot-projekt Raigo Veisberg Maksu- ja Tolliameti kaudsete maksude ja aktsiiside talitus TEEMAD Mis on EMCS EMCS käivitumine EMCS kasutamine ja selle võimalused E-saateleht Info edastamine EMCS infosüsteemi

Rohkem

EE-macbook-retina-12-early2015-qs.indd

EE-macbook-retina-12-early2015-qs.indd Kiirjuhend Tervita oma MacBooki. Alustame. Maci käivitamiseks vajuta toitenuppu ning rakendus Setup Assistant annab sulle mõned lihtsad juhised, kuidas arvuti töökorda seada. See aitab sul Wi-Fi võrku

Rohkem

PowerPoint Presentation

PowerPoint Presentation Lühijuhend Turvaline juurdepääs, ühiskasutus ja salvestusruum failide jaoks. Rohkem võimalusi olenemata sellest, kus te asute! Logige oma Office 365 tellimusse sisse ja valige rakendusekäiviti kaudu SharePoint.

Rohkem

Microsoft Word - Errata_Andmebaaside_projekteerimine_2013_06

Microsoft Word - Errata_Andmebaaside_projekteerimine_2013_06 Andmebaaside projekteerimine Erki Eessaar Esimene trükk Teadaolevate vigade nimekiri seisuga 24. juuni 2013 Lehekülg 37 (viimane lõik, teine lause). Korrektne lause on järgnev. Üheks tänapäeva infosüsteemide

Rohkem

Tartu Kutsehariduskeskus Teksti sisestamine Suurem osa andmetest saab sisestatud klaviatuuril leiduvate sümbolite abil - tähed, numbrid, kirjavahemärg

Tartu Kutsehariduskeskus Teksti sisestamine Suurem osa andmetest saab sisestatud klaviatuuril leiduvate sümbolite abil - tähed, numbrid, kirjavahemärg Teksti sisestamine Suurem osa andmetest saab sisestatud klaviatuuril leiduvate sümbolite abil - tähed, numbrid, kirjavahemärgid jne. Suurte tähtede sisestamiseks hoia all Shift-klahvi. Kolmandate märkide

Rohkem

Neurovõrgud. Praktikum aprill a. 1 Stohhastilised võrgud Selles praktikumis vaatleme põhilisi stohhastilisi võrke ning nende rakendust k

Neurovõrgud. Praktikum aprill a. 1 Stohhastilised võrgud Selles praktikumis vaatleme põhilisi stohhastilisi võrke ning nende rakendust k Neurovõrgud. Praktikum 11. 29. aprill 2005. a. 1 Stohhastilised võrgud Selles praktikumis vaatleme põhilisi stohhastilisi võrke ning nende rakendust kombinatoorsete optimiseerimisülesannete lahendamiseks.

Rohkem

Microsoft Word - HOTSEC kasutusjuhend v1.900.docx

Microsoft Word - HOTSEC kasutusjuhend v1.900.docx HOTSEC Tarkvara kasutusjuhend v. 1.9 1 Sisukord Käivitamine:... 3 Programmi kasutamine... 4 Kasutajate lisamine ja eemaldamine:... 6 Jooksev logi:... 9 Häired:... 9 2 HOTSEC põhioperatsioonide kirjeldus

Rohkem

DNS teenus teoorias ja praktikas Autor Siim Adamson ITK Autor: Siim Adamson ITK

DNS teenus teoorias ja praktikas Autor Siim Adamson ITK Autor: Siim Adamson ITK DNS teenus teoorias ja praktikas Autor Siim Adamson ITK 2008 1 Ettekande sisukord Ettekanne jaotatud 9 peatükiks: 1.DNS süsteemi ajalugu 2.DNS süsteemi struktuur 3.DNS kirjete tüübid 4.DNS serveri seadistamine

Rohkem

Microsoft PowerPoint - Lisa 5 koolituse materjalid

Microsoft PowerPoint - Lisa 5 koolituse materjalid 03. detsember, 2009 Piirangutest vabaks IT-ga või IT-ta? Heiti Mering Heiti.mering@ee.fujitsu.com Eero Elenurm eero@elenurm.net Piirangud või võimalused? Millised on meie oskused? Millised on meie teadmised?

Rohkem

Microsoft Word - Toetuste veebikaardi juhend

Microsoft Word - Toetuste veebikaardi juhend Toetuste veebikaardi juhend Toetuste veebikaardi ülesehitus Joonis 1 Toetuste veebikaardi vaade Toetuste veebikaardi vaade jaguneb tinglikult kaheks: 1) Statistika valikute osa 2) Kaardiaken Statistika

Rohkem

Makseterminali VeriFone VX675 kasutusjuhend 1

Makseterminali VeriFone VX675 kasutusjuhend 1 Makseterminali VeriFone VX675 kasutusjuhend 1 Käesolev Makseterminali kasutusjuhend on Kaupmehele abiks kindlustamaks kaardimaksete turvaline vastuvõtmine läbi Makseterminali. Juhend on Maksekaartide teenindamise

Rohkem

Microsoft PowerPoint - loeng2.pptx

Microsoft PowerPoint - loeng2.pptx Kirjeldavad statistikud ja graafikud pidevatele tunnustele Krista Fischer Pidevad tunnused ja nende kirjeldamine Pidevaid (tihti ka diskreetseid) tunnuseid iseloomustatakse tavaliselt kirjeldavate statistikute

Rohkem

PÄRNU TÄISKASVANUTE GÜMNAASIUM ESITLUSE KOOSTAMISE JUHEND Pärnu 2019

PÄRNU TÄISKASVANUTE GÜMNAASIUM ESITLUSE KOOSTAMISE JUHEND Pärnu 2019 PÄRNU TÄISKASVANUTE GÜMNAASIUM ESITLUSE KOOSTAMISE JUHEND Pärnu 2019 SISUKORD 1. SLAIDIESITLUS... 3 1.1. Esitlustarkvara... 3 1.2. Slaidiesitluse sisu... 3 1.3. Slaidiesitluse vormistamine... 4 1.3.1 Slaidid...

Rohkem

Programmeerimiskeel APL Raivo Laanemets 17. mai a.

Programmeerimiskeel APL Raivo Laanemets 17. mai a. Programmeerimiskeel APL Raivo Laanemets 17. mai 2009. a. Sissejuhatus I APL - A Programming Language I Kenneth E. Iverson (1920-2004) I Elukutselt matemaatik I Uuris matemaatilist notatsiooni I 1960 -

Rohkem

Microsoft Word - E-portfoolio-googlesites.docx

Microsoft Word - E-portfoolio-googlesites.docx Õpimapi ehk e-portfoolio loomine google sites keskkonnas Õpimapi loomise protsess I. Igapäevane õppetöö, mille õppeülesannete täitmise käigus loob õppija erinevaid materjale: klassitööd, kodutööd, esseed,

Rohkem

Operatsioonisüsteemi ülesanded

Operatsioonisüsteemi ülesanded Praktikum 3 GROUP POLICY JA ACTIVE DIRECTORY Group Policy Group Policy - vahend Active Directory arvutite ja kasutajate tsentraalseks haldamiseks. Group Policy abil on võimalik kontrollida süsteemi registri

Rohkem

Microsoft Word - essee_CVE ___KASVANDIK_MARKKO.docx

Microsoft Word - essee_CVE ___KASVANDIK_MARKKO.docx Tartu Ülikool CVE-2013-7040 Referaat aines Andmeturve Autor: Markko Kasvandik Juhendaja : Meelis Roos Tartu 2015 1.CVE 2013 7040 olemus. CVE 2013 7040 sisu seisneb krüptograafilises nõrkuses. Turvaaugu

Rohkem

Relatsiooniline andmebaaside teooria II. 6. Loeng

Relatsiooniline andmebaaside teooria II. 6. Loeng Relatsiooniline andmebaaside teooria II. 5. Loeng Anne Villems ATI Loengu plaan Sõltuvuste pere Relatsiooni dekompositsioon Kadudeta ühendi omadus Sõltuvuste pere säilitamine Kui jõuame, siis ka normaalkujud

Rohkem

IT infrastruktuuri teenused sissejuhatav loeng 00

IT infrastruktuuri teenused sissejuhatav loeng 00 IT infrastruktuuri teenused I385 Aine õppejõud: Katrin Loodus, Margus Ernits http://enos./~mernits Tallinn, 2014 Oluline info on aine vikis Kindlasti hoia silma peal aine vikil: https://wiki./ Sealt vali:

Rohkem

lvk04lah.dvi

lvk04lah.dvi Lahtine matemaatikaülesannete lahendamise võistlus. veebruaril 004. a. Lahendused ja vastused Noorem rühm 1. Vastus: a) jah; b) ei. Lahendus 1. a) Kuna (3m+k) 3 7m 3 +7m k+9mk +k 3 3M +k 3 ning 0 3 0,

Rohkem

Control no:

Control no: Smart Access Driftsprocedure A. Eeltingimused... 2 1. Nutitelefoni ühilduvus... 2 2. Kaabli valik... 2 a. Apple devices (Apple'i seadmed) (iphone 4/4S)... 2 b. Apple devices (Apple'i seadmed) (iphone 5/5c/5s)...

Rohkem

Document number:

Document number: WNR Kiirpaigaldusjuhend Lisateavet, juhised ja uuendused saab leida internetist aadressil http://www.a-link.com Kiirpaigaldusjuhend Komplekt sisaldab: - WNR repiiter - Paigaldusjuhend Ühendused / Ports:

Rohkem

EID TARKVARA (v.1812 baasil)

EID TARKVARA (v.1812 baasil) EID tarkvara ülevaade V.18.12 baasil Dokumendi info Loomise aeg 21.01.2019 Tellija RIA Autor Urmas Vanem, OctoX Versioon 19.01 Versiooni info Kuupäev Versioon Muutused/märkused 21.01.2019 19.01/1 Avalik

Rohkem

I Generaatori mõiste (Java) 1. Variantide läbivaatamine Generaator (ehk generaator-klass) on klass, milles leidub (vähemalt) isendimeetod next(). Kons

I Generaatori mõiste (Java) 1. Variantide läbivaatamine Generaator (ehk generaator-klass) on klass, milles leidub (vähemalt) isendimeetod next(). Kons I Generaatori mõiste (Java) 1. Variantide läbivaatamine Generaator (ehk generaator-klass) on klass, milles leidub (vähemalt) isendimeetod next(). Konstruktorile antakse andmed, mis iseloomustavad mingit

Rohkem

ipod nano Kasutusjuhend

ipod nano Kasutusjuhend ipod nano Kasutusjuhend Sisukord 1. peatükk 4 Põhiinfo ipod nano kohta 5 ipod nano lühiülevaade 5 ipod nano nuppude kasutamine 7 Pikkade nimistute kiire sirvimine 7 Muusikaga seotud menüüosade otsimine

Rohkem

Neurovõrgud. Praktikum mai a. 1 WEKA WEKA (Waikato Environment for Knowledge Analysis) on masinõppimise ja andmekaevanduse algoritmide k

Neurovõrgud. Praktikum mai a. 1 WEKA WEKA (Waikato Environment for Knowledge Analysis) on masinõppimise ja andmekaevanduse algoritmide k Neurovõrgud. Praktikum 14. 21. mai 2005. a. 1 WEKA WEKA (Waikato Environment for Knowledge Analysis) on masinõppimise ja andmekaevanduse algoritmide komplekt koos mugava keskkonnaga, mis on tasuta (GNU

Rohkem

8. Lõpetamine 8.1 Lõpetamise eeldused Eelduseks, et üliõpilane saaks lõpetada, peab tema õppekava täidetud olema. Kui üliõpilane õpib õppekaval, mis l

8. Lõpetamine 8.1 Lõpetamise eeldused Eelduseks, et üliõpilane saaks lõpetada, peab tema õppekava täidetud olema. Kui üliõpilane õpib õppekaval, mis l 8. Lõpetamine 8.1 Lõpetamise eeldused Eelduseks, et üliõpilane saaks lõpetada, peab tema õppekava täidetud olema. Kui üliõpilane õpib õppekaval, mis lõpeb lõputööga, on tema tulemustes enne lõputöö sooritamist

Rohkem

HAJUSSÜSTEEMID HAJUSSÜSTEEMID Peer-to-peer süsteemid Peer-to-peer süsteemide liigitus Liigitus Ründed Anonüümsus Puuräsi DHT Näide: Kazaa Näide: Kadem

HAJUSSÜSTEEMID HAJUSSÜSTEEMID Peer-to-peer süsteemid Peer-to-peer süsteemide liigitus Liigitus Ründed Anonüümsus Puuräsi DHT Näide: Kazaa Näide: Kadem Peer-to-peer süsteemid Peer-to-peer süsteemide liigitus Liigitus Ründed Anonüümsus Puuräsi DHT Näide: Kazaa Näide: Kademlia Näide: Gnutella Näide: BitTorrent Eelajalugu: tsentraalsed süsteemid "Puhas"

Rohkem

遥控器使用说明书(ROHS) ALPA-CS349-R09D(E)-0301(内容)

遥控器使用说明书(ROHS) ALPA-CS349-R09D(E)-0301(内容) KASUTUSJUHEND SIIRDATAV KDITSIEER KAUGJUHTIMISPULDI KASUTUSJUHEND AM-5PR(N) Täname teid, et olete soetanud endale meie õhukonditsioneeri Palun lugege hoolikalt käesolevat kasutusjuhendit enne seadme kasutamist

Rohkem

Sekretäri tööülesanded, õigused ja vastutus Ametikohtade eesmärk Ametikoht 1 (sekretär) Asjaajamise, dokumendiringluse ja linnavalitsuse sisekommunika

Sekretäri tööülesanded, õigused ja vastutus Ametikohtade eesmärk Ametikoht 1 (sekretär) Asjaajamise, dokumendiringluse ja linnavalitsuse sisekommunika Sekretäri tööülesanded, õigused ja vastutus Ametikohtade eesmärk Ametikoht 1 (sekretär) Asjaajamise, dokumendiringluse ja linnavalitsuse sisekommunikatsiooni korraldamine ning dokumentide korrektne ja

Rohkem

Pythoni Turtle moodul ja Scratchi värvilisem pool Plaan Isikukoodi kontrollnumbri leidmine vaatame üle lahenduse kontrollnumbri leimiseks. Pythoni joo

Pythoni Turtle moodul ja Scratchi värvilisem pool Plaan Isikukoodi kontrollnumbri leidmine vaatame üle lahenduse kontrollnumbri leimiseks. Pythoni joo Pythoni Turtle moodul ja Scratchi värvilisem pool Plaan Isikukoodi kontrollnumbri leidmine vaatame üle lahenduse kontrollnumbri leimiseks. Pythoni joonistamise võimalused Turtle mooduli abil. Scratchi

Rohkem

P9_10 estonian.cdr

P9_10 estonian.cdr Registreerige oma toode ja saage abi kodulehelt www.philips.com/welcome P9/10 Eestikeelne kasutusjuhend 2 Ühendage P9 kõlar Bluetooth ühenduse kaudu oma Bluetooth seadmega, nagu näiteks ipadiga, iphone'iga,

Rohkem

TARTU ÜLIKOOL LOODUS- JA TÄPPISTEADUSTE VALDKOND ARVUTITEADUSE INSTITUUT Lauri Kongas Turvaauk CVE Referaat aines Andmeturve MTAT Õpp

TARTU ÜLIKOOL LOODUS- JA TÄPPISTEADUSTE VALDKOND ARVUTITEADUSE INSTITUUT Lauri Kongas Turvaauk CVE Referaat aines Andmeturve MTAT Õpp TARTU ÜLIKOOL LOODUS- JA TÄPPISTEADUSTE VALDKOND ARVUTITEADUSE INSTITUUT Lauri Kongas Turvaauk CVE-2016-0778 Referaat aines Andmeturve MTAT.03.134 Õppejõud: Meelis Roos Tartu 2016 OpenSSH OpenSSH hõlmab

Rohkem

Andmeturve

Andmeturve CORBA Sissejuhatus IDL CORBA struktuur Serveri ehitus Objekti adapter Lisateenused MEELIS ROOS 1 CORBA sissejuhatus CORBA Common Object Request Broker Architecture Üldine Objektipäringute Vahendaja Arhitektuur:)

Rohkem

IFI6083_Algoritmid_ja_andmestruktuurid_IF_3

IFI6083_Algoritmid_ja_andmestruktuurid_IF_3 Kursuseprogramm IFI6083.DT Algoritmid ja andmestruktuurid Maht 4 EAP Kontakttundide maht: 54 Õppesemester: K Eksam Eesmärk: Aine lühikirjeldus: (sh iseseisva töö sisu kirjeldus vastavuses iseseisva töö

Rohkem

(Microsoft Word - T\366\366leht m\365isaprogramm 4-6 kl tr\374kkimiseks.doc)

(Microsoft Word - T\366\366leht m\365isaprogramm 4-6 kl tr\374kkimiseks.doc) 4-6 KLASS 1 Minu nimi on Ma olen praegu Täna on 1. KÄRNERIMAJA JA LILLED Kirjuta või joonista siia kolm kärneri tööriista Kirjuta siia selle taime nimi, 1. TÖÖRIIST 2. TÖÖRIIST 3. TÖÖRIIST mida istutasid

Rohkem

MOOCi „Programmeerimise alused“ ülesannete lahenduste analüüs

MOOCi „Programmeerimise alused“ ülesannete lahenduste analüüs TARTU ÜLIKOOL LOODUS- JA TÄPPISTEADUSTE VALDKOND Arvutiteaduse instituut Informaatika õppekava Helen Hendrikson MOOCi Programmeerimise alused ülesannete lahenduste analüüs Bakalaureusetöö (9 EAP) Juhendaja:

Rohkem

MTAT Operatsioonisüsteemid - Turvalisus

MTAT Operatsioonisüsteemid - Turvalisus Ligipääsuhaldus 1. slaid Operatsioonisüsteemil tuleb: Kaitse ja turvalisus Kaitse Turvalisus kontrollida juurdepääsu programmide ja arvuti ressursside juurde ja tagada nende säilimine Andmete juhuslik

Rohkem