c, mpi, uykusuz geceler ve kundante!

bir okul projesi tesliminin daha sabahı bugün!
açık kaynak ve özgür yazılım günlerinde takip ettiğim kadarıyla ilgimi çekmişti quantum, genetic, parallel computing konuları baktım comp474 diye bir ders var paralel programlama, hemen atladım üzerine.
ders c tabanlı çıktı tabii.. ilk başlarda c falan görmez teori üzerine gider -hyper cube falan- verinin iletilmesi vs gibi problemleri çözüp eğlenirken acı gerçek kendini gösterdi: bunları programlamak, ama c'de!!
fena olmadığını düşündüğüm bir java bilgim var (şimdilik elime gelen projelerin altından kalkabiliyorum en azından) ama c.. tek bildiğim onun java'yla benzerlik gösterdiği ve atası olduğu.. bir de tabii c++, c# var çocukları..
dersi almamda etken arkadaşım hakan'la kafa kafaya verdik yaparız yahu dedik.. netekim ilk projemiz olan matris çarpımı algoritma olarak gayet kolay görünüyordu.
ben de kolları sıvadım gerekli ve doğru olduğunu düşündüğüm mpi komutlarının arasına bir güzel java kodu yazdım -çok parlak bir fikirdi benim için. bunu
her neyse sonuç itibariyle bu algoritma iki boyutlu dizileri gerektirdiğinden -malumunuz benim sıfır, hakan'ınsa kısıtlı c bilgisi yetmedi bu projeyi hayata geçirmeye.
hocamız matris çarpımı üzerine nette c kodu bulabileceğimizi söylemişti. evet var gördüm ama henüz inceleme fırsatım olmadı. inceleyince buraya bir ek yaparım artık..
derken final günü geldi çattı, finalin ikinci kısmı "take home" şeklindeydi ve quicksort ya da mergesort algoritmalarından birini gerçeklememiz gerekiyordu.
son finalimin ardından çarşamba günü sıvadım kolları ve pazar sabahına doğru yoğunlaşan bir şekilde çalıştım. burda çalıştık desem daha doğru olacaktır.
artık bir noktada elimizdeki algoritmalar çalışmayıp, node'lar birbiriyle alışveriş yapmamakta diretince kundante'ye sardık kendimizi.
fairuz derin bulut'un muhteşem şahane şarkısını herkese tavsiye ediyorum özellikle kodculara.. terelelli anında bundan daha iyi tesir edecek bir şey bilmiyorum. mümkünse bir kaç kere dinleyin ve eşlik edin!!
ufak bir kundante seansından sonra gene verdik kendimizi kodlara. kah c allocation sorunları çıkarıyor, kah deadlock'a giriyorduk.
ezanla gelen sabah bize artık teslim saatinin yaklaştığını hatırlattı. her şeyi yapıp da kendi arasında bilgi alışverişi yapamayan node'lu kodumuza raporlarımızı hazırlayıp kendimiz sabah uykusunun boğucu kollarına attık.
bütün bu çalışma ve bu blog'un sonucu:

"c is for cookie that's good enough for me"

1 comment:

Silent|Storm said...

...vrijin zıriji gurimaygande vınigone vistanavi...