Kihagyás

11. gyakorlat

Kapcsolódó tananyagok

Órai feladatok

Órai segédletek
  1. Fordítsuk le a kiinduló programunkat! Majd futtassuk előbb a ./prog torony.ppm ki all, majd a ./bin/prog torony.pgm ki all parancsokkal! Mit veszünk észre?
  2. Módosítsuk a Makefile CFLAGS változóját, hogy az profilozáshoz legyen beállítva!
  3. Fordítsuk újra a programunkat, és futtassuk újra a ./prog torony.pgm ki all parancsot! Milyen kimenete keletkezett a futtatásnak?
  4. Futtassuk a grpof ./bin/prog parancsot, és elemezzük az eredményeket! Illetve vizsgáljuk meg a gprof ./bin/prog gmon.out > analysis.txt eredményét is!
  5. Nézzünk meg egy másik lehetőséget is a profilozásra! Állítsuk vissza az eredeti CFLAGS beállítást a Makefile-ban, majd futtassuk a programunkat a valgrind --tool=callgrind ./bin/prog torony.pgm ki all parancssal! Milyen kimenet készült?
  6. Futtassuk a callgrind_annotate --auto=yes callgrind.out.XXXXXXX parancsot! Elemezzük a kapott eredményt!
  7. Javítsuk a programot az eredeti helyen úgy, hogy az eredetivel szemantikailag ekvivalens, de hatékonyabb programot kapunk! Ha van rá idő, akkor a megvalósítást azzal kezdjük, hogy elkészítjük a kérdéses metódus unit tesztjét! A profilozás hatékonyság növelés akkor volt jó, ha tényleg gyorsabb is a teszt, és minden unit teszt megfelelően lefutott!

Gyakorló feladatok

  1. Teszteld az eddigi transzformációidat hatékonyság szempontjából! Ha tudod, javítsd a hatékonyságot!
  2. Bővítsd a transzformációk listáját! Teszteld őket minden szempontból (memória, cunit, performancia)