Sunday, 16 May 2010

Update

Long time since I blogged. Feel the urge to blog now more than ever. As you may have noted, I have changed the template.

Also, I am done with my final year project 'Grid Computing Framework'. Though it works fine till now, I feel a lot of work needs to be done to make it usable in a completely unsupervised network. Yash, Anil and Kalpesh did an awesome job with the GUI and documentation (which was in LaTeX, using LyX). They solved problems, which were indeed very very frustrating. Hats off guys!

The last few days were quite horrifying. The processing would work fine for three machines, and as soon as I added one more machine, everything went haywire. This was what I had in front of me on 24th April, after a week of relentless debugging. I could not find a way out of this mess.

But the simple concept of 'Replication of Resources' from Distributed Systems helped. It turned out that there was one socket on which the Supervisor (server) machine which was serving files, and Workers (clients) were receiving them. Simultaneous requests were handled by mutexs. However, in the background there was a time-limit for a file to be received and processed.

What was happening was, the clients were waiting on the mutex and getting timed out, since there were a few of them and the files being sent were large. This was having a domino effect on the system. The problem was solved by increasing the number of sockets (20 for our purpose) and keeping individual mutexes for each socket. This solved the problem for the time being, and by April 26, the project was working as envisioned. :) A lot of hard work has gone into this project, in the last one month more than 7 - 8 hours each day (and there was regular college during that time too). I am sincerely grateful to the lab assistant, Mr. Shukla who was in the lab till 9 in the night in the final 15 days. Technically, without him, it was impossible to work.

Have a look at the git repository: http://github.com/reddragon/Grid-Computing-Framework

Read the documentation first. :)

1 comments:

yashlondhe said...

U write pretty gud blogs
need 2 learn that ability from u