Tuesday, July 29, 2008

Terror in India

Over the past few days, terror has really gripped India. Today, bombs have been uncovered like mushrooms all over the country. Indian security establishment is undoubtedly pathetic, but hopefully, they'll improve after this (Though the cynic in me tells me that it is next-to-impossible) . On a more sinister note, this strategy of several low-intensity bombs going off in multiple cities in quick succession seems to be generating more terror while being taking less casualties than previous practice of detonating a few powerful bombs in a city and then lying low for a while.

Monday, July 28, 2008

In Mumbai

I am back in Mumbai and it will take a couple of days for life to normalize here. It's been raining cats and dogs all day today. Looks a little better right now. Internet here is somewhat better than back home, though it is much better at off hours.

There are a couple of things that I must get done in the next few days. One of them is to make linuxdcpp run without shutting down the firewall (had to do it openSuSE 10.2, :-( ). It runs fine on F8, so should be no problem on F9.

Hopefully, the rains will abate soon.

Friday, July 25, 2008

Wish 2

Can't tell you how much I would love fully featured open source drivers from the GPU guys, for their latest (even if not greatest :)) 3D cards for linux. Right now, I am writing this on a laptop which has integrated nvidia GPU. It's Geforce 6150 Go. Decent, but not great. But hey, it's pretty good for my budget.

The only practical problem with the nVidia drivers is that whenever I shut down X, the whole screen goes garbled and starts displaying weird colors. Thanks to the Ctrl-Alt-F6/7 trick, I am able to restore it back to normal, but it shows the lack of maturity of the drivers. The problems associated with trying to reach nVidia to resolve issues with their proprietary drivers are legendary.

I just hope that the nouveau guys can get 3D up and running ASAP. AMD/ATI has done a very good job here by providing docs so that we can write our own drivers. Right now, I am pretty sure that my next computer will certainly have intel or ATi graphics in it. Besides I am secretly hoping that intel is able to resist the temptation to go proprietary only for Larrabee.

The real big push in the driver space is going to come because the GPGPU guys (like me) want more flexibility in the drivers. It is a very important piece in the software stack and the features provided by the present day drivers are simply not enough if GPGPU has to live up to its true potential. Want an example? There are many.

1) I want the data to directly DMA'ed to/from GPU memory instead of being streamed via system RAM.

2) I want the GPU handling API to signal a condition variable (pthreads).

3) I want the GPU to absolutely not perform any graphics tasks and instead leave them to the integrated graphics.

4) Related to 2. Anybody who's going to the trouble of porting stuff to GPU's obviously wants his CPU to to be maxed out as well. With parallel solutions dime a dozen, he would obviously want some support for his solution from API, as in 2 above.

While I don't expect even the upcoming open-source ATI drivers to have features wished for by me, their open source credentials ensure that I can hack them myself if I want to.

I just hope that the RadeonHD driver team is able to deliver quickly and I am praying that nouveau team succeeds as well.

Wish 1

I was myself surprised when I realized how bad service I was getting when came back home. It is really horrible. Ok, speeds haven't improved but the reliability was much better earlier. 256k seems awfully slow after experiencing first world internet access in Germany. When you serve that with a service that gives at best 10 minutes of continuous access, I would throw up any time.

Our situation in wired internet is not going to improve until we start enforcing unbundling. We need competition to improve our market situation. Internet is better in Europe than in USA because of unbundling. I am afraid that's not going to happen any time soon here.

Today, I can comfortably say that mobile phone has become a necessity. As a country we need to take steps to make broadband internet the next necessity. Our unique status gives us an opportunity to bypass 3G networks entirely and straight away build 4G networks today. True, LTE isn't availaible today, but then we shouldnt wait for it's standardization either. We need to start deploying WiMax now.

Unfortunately, that's not what we are doing today.

Wednesday, July 23, 2008

Tech Wishlist

Here's my wishlist, more or less in descending order. After all, I can dream, can't I?

1. Better broadband service from MTNL. Right now, you can rest assured that you will get no more than 10 minutes of continuous access interspersed with an hour's down time.

2. Fully featured open source drivers for graphics cards from nVidia and AMD (the AMD side should come true soon).

3. Better developer tools for their GPU's for GPGPU purposes from AMD.

4. Cheaper FPGA dev kits with higher gate densities.

5. User assemble-able laptops just like PC's.

6. Google opening one of it's many data centres in India.

7. Completely hackable RSX on PS3 with linux.

8. Hobbyist hackable soc's like nvidia's APX 2500. User moddable devices that use them will do too. (in fact they are preferable)

I will post details about my wishes, and the why of my wishlist, in upcoming posts.

Monday, July 21, 2008

Back Home

I am back in India and it feels great to be home, even though it's only for a short while. Time to catch up with friends. Multi-threading will have to wait a little, I guess.

Saturday, July 19, 2008

Last Post

This is my last post from Germany. Can't wait to get back to home. Multithreading is also coming along well. But I realize that I will need to start small. Looking forward to it.

Friday, July 18, 2008

Pack up

Now all my stuff here is over. I do have some time here left to take a shot at multi threading. Good news is, yesterday, I tried an example (though introductory) and it worked. First things first, need to convert it to C++ from pure C.

Thursday, July 17, 2008

Time to go

Well, now the time to pack bags and go home is approaching. Though I may be able to get started with my multi-threading attempt. Looking forward to it.

Multi-threaded Programming

I came across a very good tutorial to pthreads library. It is a really simple explanation with a few well-written and well-commented examples which show you the concepts. I now think I have enough to take a crack(my first) at multi-threaded programming.

I have a design paradigm in mind to solve the nasty things associated with parallel programming. I am pretty sure that I can solve the easy ones like WAW,RAW,WAR hazards with it. I am reasonably sure that it leads to no deadlocks and live-locks either. Resource starvation? priority inversion? Hopefully not. Race condition? That's a problem that will have to be solved by careful design. But I guess there's only one way to find out.

Code it.

Wednesday, July 16, 2008

Learnig Haskell

I have recently taken to this language. Seems interesting. Functional programming is a very natural style to solve certain problems. Besides, it has certain other useful benefits such as having no side effects. There only problem is, there is only one way to learn a new language,however.

You have to write a non-trivial program in it. I on the other hand hate doing anything which seems remotely repetitive. Now that I think of it, I learnt C++ while aiming to write a good calculator program. I ultimately wrote it, but it was hardly fit for day to day use. I learnt Python after falling in love with it and then beginning to use it in my data parsing scripts. FORTRAN, ha, I just somehow hammered it it in to my skull.

I am really looking forward to solving a non-trivial problem in Haskell. Sure, I'll get lots of tutorials, books for it. But I think I am not going to get it unless I write something of moderate size in Haskell, and not by just transcribing C to Haskell.

Looking forward to that problem.

My First Post

Hi all,

This is my first post here. Though not my first attempt at maintaining a regular blog. I hope I will be able to keep it up this time though.