Monday, April 23, 2007

On a high

After a night out, Cycle and I were on our way to Himalaya mess for breakfast.

Siva: Hey Cycle, I am on a high due to lack of booze.

Cycle: Wtf... You seriously are on a high after the night out


After breakfast, on our way back.

Cycle: How are you now da? Are you slisha better?

Siva: Not sure da. Need to find out if I gained or lost altitude over the last half an hour.

Cycle: Machaaaaa...... Ok lets see. Tell me a joke...

Siva: Give me an altimeter...

Cycle: Wtf... Go crash.... You seriously get into a high after your night outs.

Best stress test in the world

3rd year CS at IITM especially with these courses in 6th sem:
  1. Software Engg + Lab with Ramkumar as the TA - Lab project - Add a new protocol to Gaim to support serverless chat on LANs. Our TA claims that this is not a sufficiently complex project.
  2. Computer Networks + Lab
  3. CAD for VLSI - no lab credit, but you need to make a fully pipelined super-scalar 32 bit Tomasulo processor with over a million transistors and synthesize it on an FPGA board to pass the course. The problem statement for this project is 10 pages long! This is in addition to a few other lab assignments which seem to be peanuts.
  4. Planning and Constraint Satisfaction - A very recent field of study. As far as I can see, this field was started only for the sake of the biannual International Planning Competition initiated in 1998. No lab credit, but you are given some planners that were used in the International Planning Competition and you need to design metrics to figure out which planners are better in which sort of domains and then run numerous tests to evaluate the planners.
  5. Computational Geometry - A self study course. I never managed to understand anything in the book. It takes about half an hour to understand each page in the book. None of us who took the course managed to proceed much in the book. Finally we have been asked to make a presentation on one topic each. Most of us are dependent totally on the presentations to understand syllabus for the end sem.
  6. E.Commerce - Ah the only 'peace' course this sem. No end sem. Just a term paper and a presentation. I really liked what we worked on for the term paper. The course is over and I unofficially know the grade too.
With 5 projects to be completed during or after the end semester exams, I seem to be heading towards a rough fortnight ahead.

I hope the internship in California would be a hard earned reward.

On a lighter note, just found this on a friend's status message

Sunday, March 25, 2007

World Cup 2007

Yesterday was the grossly overvalued Indian Team's match and they did not quite come anywhere close to meeting the expectations. And today was the match of the current world champions - the Aussies. I just saw a few moments in today's match and the difference between the Indian team and Australian team was so obvious. The Aussies are such a professional team (read consistent). They always perform to a certain level irrespective of the team that they are playing against. Today they played South Africa which is a very good team but has had a lot of bad luck in the past. The Aussies scored a mammoth 377 against SA! When I was watching the match, every throw by an Australian cricketer at the stumps did hit the stumps! All this just indicates their professionalism.

The Indians on the other hand are just a pack of highly talented bunch of cricketers asked to play together in a team. Consistency has never been in the Indian dictionary. Even in the last world cup, they performed miserably for the first couple of matches and then won all the remaining matches.

But we will continue to support Team India and bet on them winning the next World Cup. HAIL Team India.

Sunday, November 19, 2006

Human brain vs Computer

A lotta people have tried to model the computer as a human brain. I thought I should just try the reverse. Well I will just try to put down some analogies.


OS does process scheduling - human brain also does scheduling.. Those who have hajaar concentration are actually able to disable context switches. Perhaps it is possible to do this by disabling interrupts. But then disabling of interrupts is a privileged instruction and it should be possible only for the kernel to use it. So the kernel up their brains is insecure. Haha. The programs that run on their brains are somewhat like some hacker's code on a comp which could possibly disable interrupts and then use the complete processing power of the processor. But then, what the hacker program does is typically considered as useless work (possibly harmful), but the equivalent work on the human brain is considered as useful. Maybe we need to change our notion of usefulness to something more consistent across the platform....

Context switches in comps take approximately constant time. But in the human brain, a context switch to do something utterly 'useless' has switch time tending to zero if you have been doing something 'useful'. And if you are just whiling away time, the context switch time required to switch to a 'more useful' task seems to approach infinity. Strange.....

Just like the comp, the human brain also has memory hierarchies. At the most basic level, there is the RAM and hard disk on the comp. Similarly the brain also has short term and long term memory. We need to spend some time in recollecting old events etc, just like paging in pages from the hard disk to RAM. It would be interesting to find out what sort of replacement algorithm is followed in the brain..... Perhaps the brain also has other levels of hierarchy similar to the different levels of cache in the comp, we might just be unaware of them or rather not tried to model the brain with that many levels of memory hierarchy.

The Spinal cord is very much an equivalent of the FSB. It provides the link between the processor and all the peripheral organs (devices).

Saturday, November 04, 2006

Life is full of surprises

A few weeks back, after those 3 consecutive night outs, I thought things can't get any worse. But the beauty of life is that it always manages to prove you wrong. This year I had the worst Diwali of my life. I had to submit a Compilers assignment on Diwali...

Diwali was on a Saturday. From Friday night till Saturday afternoon I spent the entire time in the Lab trying to finish the assignment. This was after a night out the previous day working on the same assignment. The only period for which I came out from Lab was for having breakfast and even that was not a smooth affair. When I came out of the Lab at seven in the morning, it was bright outside. I decided to go for breakfast and then come back later to continue with the assignment. As soon as I left the dept, it became quite dark and started raining. By the time I reached the hostel, I was completely drenched. It was pouring so badly that I could not even leave the hostel and go to the mess for a while. After about an hour, when the rain had subceeded, I had breakfast and went back to lab.

Finally I managed to finish the assignment and submitted the same by two in the afternoon. Well things would have been fine if that was the only assignment. On Monday I had to submit another OS Lab assignment which required a lot of work. There was no way I could have finished it even if I had put night outs on Saturday as well as Sunday. So I just read up the project description for OS lab and then decided sleep for a while in the evening.

I was so tired that I slept much longer than I had intended to. Others in the hostel were enjoying outside and were bursting crackers etc. Amidst all the noise of crackers, I slept like a log. Finally I woke up at 9 in the night.
Damn!! I had missed dinner also...

Anyway there was nothing much I could do now.. So I went to Coffee day (Oh yeah, a new Coffee day outlet has been opened in IIT) . That was the only eatery that was open in IIT on Diwali. After that I went back to lab to start off on the OS assignment.

On Monday, most of the groups had not finished the OS assignment and so the deadline was postponed. Eventually, since the TA for course was not free whenever we wanted to show it, it kept getting postponed. And I am now in the lab waiting to submit the same OS assignment for which I have been putting fight since Diwali.

Update : Looks like there will be another extension. My partner for the OS assignment is unfortunately ill and has been admitted to hospital. And after such a long wait, the TA told me to submit it after my partner is back...

Tuesday, October 17, 2006

Fate

When something that you hate happens not once, but twice within a week, what do you call it?

FATE?

Well last weekend, I wanted to rebuild the partitions on my hard disk. Actually I wanted to remove 3 separate 30 GB partitions and create a single large partition. I deleted the 30GB partitions in windows and rebooted. But my comp was never able to boot into windows or linux after that. It said grub error 22 and the bootloader failed to initialize. Well this has happened before. So I promptly took out my SuSE DVD and tried to reinstall grub.

"Unable to write to /boot/...."

Damn!!! WTF

So I was not able to reinstall grub. Somehow I managed to install the windows bootloader later and windows was up and running again. But I had just written code for one of my assignments the previous day and it was on the linux partition. I could not place a backup of the code on the department server as the network was having problems the previous day. Fuck!!

Luckily, I had some intermediate version of the code in my mailbox. So I would have to make the additional changes only. This was the first instance of what I call FATE.

The second one occurred yesterday. I had to submit a lab assignment for the compilers course yesterday night at 9 (Monday). Our group started working on the assignment on Saturday. Well we actually had to fix bugs in our previous assignment to start work on this assignment. So that part took us all the time till Sunday night. So a night out on Sunday was inevitable. We stayed in the DCF till 5:30 in the morning and managed to finish quite a bit of the work. Finally we thought we must take a break, so we decided to continue working on the code later during the day after the classes got over. We had been storing all the code on my account all the while. One of my teammates wanted to copy the code to his account as he had a much older version of the code. He used the typical scp command to do this. He asked me to enter the password and I did that. We happily left the lab after that. I went back later in the morning to the lab to continue working on the code. That is when I noticed that something strange was happening. The code was not even compiling fine. I looked up the file and saw that all the changes were lost.

My teammate had scp'ed from his account to mine instead of the mine to his.... And I, being already tired and sleepy just entered my password without seeing the command.

Shit!!! Lost assignment code for the second time.

Luckily, the lab submition deadline was extended to later this week as most groups had not finished. So hopefully we can manage to fix the code to some decent shape

Amidst all this, I got a message yesterday that there will be a midsem today.

I had not attended classes for well over a month in that course - which meant I had to mug from scratch. A night out was the only option.

Fuck.... How was I to manage another successive night out. And to make things worse, the exam today was scheduled for 8:30 PM. So I had to stay awake that much longer and also be relatively active while writing the exam.

Somehow I managed night out number 2 in succession yesterday. There was so much to mug that there was no way I could have made it even if I did not crash at all. Anyway I decided to give it my best shot and stayed awake throughout, mugging away for most of the time. I also attended a couple of classes in between.

Finally at 8:30 I went to the class and the prof promptly came and said it would be a 'Take home quiz'. Damn it!!! The good thing was I had not managed to mug completely and this would give me some time to read up and also refer to the book while writing the paper, but the bad thing was that it meant I need to virtually put another night out if I have to complete it in time for the class tomorrow.

No way... I have slept for only 3 1/2 hours in the past 63 hours and there is no chance of me managing another night out.

I am already halucinating and I can hardly make out what I am writing here. I'd better get some sleep now...

Monday, September 11, 2006

Never store your Prof's mobile number on your cell

A very hilarious thing happened last week. There is this guy in CS dept who had put a night out last Thursday. Let me call him X. X felt terribly sleepy during all the classes on Friday. He had a 2 hour class of Prof. Y in the afternoon on Friday at 2:00 PM. This was after another lecture from 1:00 to 2:00 PM Since he was too sleepy, he decided that he would bunk the 2 hour class. He wanted to know if his friend Z was attending the class. So he put in an SMS - "Attending Class?" to Z during the 1'O clock class. He did not receive any reply from Z. At 2, he met Z outside the classroom and both decided to bunk the 2 hour class. So both went back to their rooms and crashed.

Later in the evening on Friday, X left his mobile in his room when he went to the mess. After dinner, he went to the lab to do some assignment. Then he noticed that there was a missed call from Prof. Y. He wondered how Prof. Y knew his mobile number. He did not want to call Prof. Y as it was already 10 PM. So he sent an SMS to Prof. Y saying - "Sorry. I did not have my mobile with me when you had called sir. Anything important?" He did not receive any reply though.

Then on Sunday, X was just checking the sent messages folder on his mobile. That is when he got a shock. He had sent 2 messages to Prof. Y. He remembered sending only one. So when he checked them, he saw that he had sent the "Attending Class?" message to Prof. Y instead of X.

Shit!!!

The actual names of Prof. Y and Z start with the same alphabet. So X chose Prof. Y in the phonebook by mistake. Yeah this is the problem of storing your Prof's mobile number on your cell. Well after this incident, X immediatly prefixed the names of all Prof's in his phonebook with "Z_" so that the likelihood that he sends a message to one of them by mistake is reduced immensely.


PS : No marks for guessing that X is me!!!

Sunday, September 03, 2006

VMware

I just installed VMware on my SuSE 10.1 so that I can use Windows XP also simultaneously. I must say it is a truly good software. It provides literally and entire new virtual machine. My windows installation on the virtual machine actually seems to be running faster than my native install!!!

It is a phenomenal concept. Of course now the virtualization is moving down to the hardware level where next generation processors offer virtualization technology at the basic processor level - well that is a lot different from the software virtualiazation though. In software virtualization, you provide a virtualization layer between the guest OS and host OS which runs on the actual machine. But in hardware virtualization, you will actually have 2 native OS that can run on the physical hardware.

Below are the steps that I used to get Windows XP Pro (guest OS) running on my SuSE 10.1 (Host OS). I need this post as a reference for myself if I need to reinstall it later :) These are the settings that I used and I guess would pretty much work for most systems.
  1. Install VMware Server on Linux (From RPM).
  2. run vmware-config.pl - Use all default settings. Only change the location for the Virtual Machine files if required.
  3. Run VMware.
  4. Click on Create new virtual machine - Set it to Windows XP Professional and follow steps to create the Virtual Machine drives.
  5. Insert Windows XP CD and click on "Power ON the virtual Machine". Then follow normal windows installation procedure.
  6. Shutdown the virtual machine.
  7. In VMware go to Edit->Preferences. Check the autofit guest option.
  8. Do this step if fullscreen mode does not work without doing this... gedit ~/.vmware/preferences -> Change the option pref.autoFitFullScreen from "fitGuestToHost" to "fitHostToGuest". Only then does full screen mode seem to work in higher resolutions. This is because the host OS might not support certain video modes that the guest OS uses.
  9. Now let us set up the virtual sound device. Click on Edit Virtual Machine Settings and in hardware click Add. Choose Sound adapter and follow the steps.
  10. Boot Windows XP on the Virtual Machine. It will first recognise a new sound device and install a driver for it. Dont bother if it is not the driver that for the sound card that you actually have on your PC. It only requires driver for the sound card on the virtual machine.
  11. Click on VM->Install VMware Tools. This will install it on the guest OS. After this, change resolution to anything supported by your monitor and hit Ctrl+Alt+Return. That will take you to full screen in the Guest OS.