*** MOVED ***

NOTE: I have merged the contents of this blog with my web-site. I will not be updating this blog any more.


PC Upgrade


I upgraded my home PC with some RAM (512MB that should have
been recognised as 784MB - see my previous diary entry)
and a 750MHz P3 bought off eBay and I can see the
dramatic improvement this upgrade has brought to my
system compared
to the 128MB RAM and a 450MHz P2 that I had on this PC.

My system now scores 1280 on 3DMark
compared to 585 before the upgrade! More importantly,
GCC 3.4 now does a clean bootstrap in ~2 hours instead
~3.5 hours earlier!

I now eagerly await my GeForce 3 graphics card, also
bought off eBay, so that I can enjoy Half Life 2!

(Originally posted on Advogato.)


Unnecessarily Obsolete Hardware

The PC Hardware scene is crazy - my home PC is around 3.5
years old and it is already very difficult to find upgrades
for it, especially CPU and RAM. I thought I finally got a
great deal on two PC133 256MB RAM modules off eBay, but
to my utter dismay found out that my PC recognised only
half the capacity of each module!

After much research on the web, I found out that not
all PC133 256 MB RAM modules are the same
as far
as the Intel 440BX chipset, that lies at the heart of
my ASUS P3B-F motherboard, is concerned.

The most irritating thing about this is that there is
no easy way of telling whether a particular PC133
256 MB RAM module is suitable for the 440BX or not, even
by looking at the normal module details given on the
site of the vendors.

When I had bought my ASUS P3B-F motherboard, it was
one of the best and most scalable motherboards I could
afford and it has already been obsoleted and has become
the primary bottleneck in my system. This is so sad.

My PC is still immensely useful to me and performs
most of the tasks that I throw at it quite well.

(Originally posted on Advogato.)


Long GCC Bootstrap Times

Yikes! GCC 3.4 takes 3 hrs 35 mins to bootstrap C/C++/Java on my machine compared to 2 hrs 30 mins for GCC 3.3 - that's an increase of 40% in compilation times between adjacent releases! Not good.

That said, improving compilation times is already a high priority item identified by the GCC maintainers, so by the time 3.4 is released, we should hope to see much better times.

Two clean bootstraps and a libjava testsuite run - and more than 8 hours of my weekend were gone. Uggghhh! :-(

(Originally posted on Advogato.)


GCC Mainline Snapshots

Oh Joy! Mainline snapshots of GCC have also become available now apart from the normal release branch snapshots. This means that people on slow and unreliable links like me can keep up with GCC development.

On the other hand, trying to wade through two large underdocumented code bases - one at work and the other at home (GCC) - is somewhat taxing and I invariably end up too tired to hack on GCJ on a weekday by the time I reach home. :-(
Michael Tiemann's account of how Cygnus was created and sustained itself makes for fascinating reading! IMHO this company, now merged with RedHat, singlehandedly contributed immensely to the GCC/binutils/GDB projects and really laid the foundation for them to become what they have - we in the Free Software world really owe them a lot. Kudos to these cool guys.

(Originally posted on Advogato.)


Package-Private Access in Java and GCJ

I managed to get package-private access checking partially working again in GCJ - as Tom tromey had predicted, this did turn up a bunch of illegal accesses in libgcj that were not being caught all this while! Some of them are trivial to overcome, some not so.

Things like foo.Bar.snafu( ) still manage to slip through GCJ though if foo.Bar is a class in a different package with package-private access and snafu( ) is a method with public access. Ditto for fields.

This made me try to go through the front-end code to figure out where to make the change for checking this and Tom was proved right once again - though the parser proper is
simple to understand, the analysis stage went straight over my head and repeated attempts to comprehend it have proved futile.

That doesn't mean that I am going to give up yet, but it
does mean that I am filled with immense respect for
people who have been able to work their way through the
front-end code and actually improve it!

It also tells me how mistaken I was about my
programming capabilities. :-(

(Originally posted on Advogato.)