Monday, May 26, 2003

we reflect upon those individuals who fought and died for this country, those individuals who ARE fighting and dying for this country, and those individuals who fought for this country and survived ... those individuals who've witnessed countless horrors, undergone painfully unthinkable dilemmas, and split-decisions that have cost/saved lives.

This day, we reflect upon our freedom, and our ability to say that we are free.
This day, we reflect upon Lincoln's reflection oh so many years ago that he may be the last president ...
This day, we reflect upon the Gettysburg Address.
This day, we reflect upon the celebration that black people who are legal members of the United States are also full citizens as well.

I celebrate the fact that I am alive and well, programming in a vastly unexplored field, and getting the opportunity to learn mathematics that they didn't exactly teach in linear algebra class. ;-) I am here because many others fought and/or died* so that I could be here.

we celebrate ...

But we also reflect upon Memorial Day's purpose:

A reflection.

Sorry... this last part below was just waiting to come out for quite some time. Just a rant:
*(And they did NOT give up their lives easily, nor willingly ... they not only fought for their country, but for themselves as well, with an understanding of what the preciousness of life is about, with an understanding, which is far more admirable than blowing your damn self up and attacking people within the confines of everyday life, somehow thinking that you've made some difference, or that some god actually thinks you're a hero for selfishly attempting to open Heaven's Door and become a CHEAP and most self-degrading martyr by attempting to take away any chance at life that others have. If any god were to celebrate that, then I pity the fate of humanity. Regardless of your reasoning, because the above certainly can't fit every case, there is no rational reasoning to giving one's life up in such a way: it doesn't help a damn thing ... it certainly doesn't help your cause, as you'd need more individuals, and are always decreasing the size of your supporters, and it will never do enough damage to ward off other forces, nor frighten them ... all it does is destroy that which you are attempting to save. Thus, I am forced to assume that your true goal is not for your religion, but for yourself. What does a terrorist have to celebrate aside from his/her false pride ? A good question. Aside from benefits/freedom to family members/friends, I cannot think of much else, as it usually falls under power/money/drugs )
*Whew* ... only 12:30 pm and my first "real" day on the job has been a bit rough !

In addition to the further optimization plans, I've been advised to test the actual cpu clock time , even though clock speeds can be directly tinkered with, in Linux, and even at the hardware level. Well it aught to be interesting nonetheless. I'm still not understanding how I can add this ugly mess to the KJB library, because of all the damn dependencies in the makefiles ... yes, I said "makefileS" ... and there are double wrappers for some of them, too. 'Nuff said.
Current Music: Xenon by Mr. T, DDR Extreme Mix Version. You just know I'm going to post a list of my favorites soon ... it's inevitable :-D !

Only 30 hours of work in. I want 40.
Well, it's my first week, so I shouldn't be that angry... after all, I make my own time schedule, so I'm the only one to blame.
I've been getting information about video capture cards ...
Also been talking with my Rocket Scientist/Engineer neighbor about a vast number of resources on Computer Vision, the most exciting of which seems to be some new sort of doppler radar technology that maps out space in three dimensions, thus simplifying the task to a HUGE extent. I figure it's of enough importance to tell Kobus (Professor Barnard) although I'm sure he already knows of it.
Also, I'm testing some old optimization tricks (as you all can easily see).
Optimization Results Round #1 ! (I should warn you that while these showed loop inversion to be slow on the Athlon machines, I attempted a second test on only loop inversion within a single for loop and found that when testing index != 0 that the results usually returned in a sixth of the time !)
OMG. You have no idea how fucking hard it was to find good and accurate Linux timers. I didn't want to use gprof simply because it created too big a profile for my task, and because I had incorrectly assumed that there were standard linux timers that were more accurate than a microsecond. I was wrong. :-) The Computer Science Department's Lectura Server does have a high-resolution timing function: gethrtime, which is accurate to the nanosecond. Unfortunately, the Pentium III Debian Machines and Athlon RedHat Machines didn't know wtf gethrtime was. So after an unsuccessful search for a nanosecond-accurate timer, I was forced to go with Linux's standard function, gettimeofday, which is accurate to the microsecond. Fortunately, its overhead is only one microsecond, and I can average out the time over multiple calls, and get a good idea of the run-time. (And that's exactly what I did, too).
Rouond Two will involve the rest of the nice (and significant) optimizations that we know and love, such as strength reduction (I'm only worried about that within loops), comparing parameterization of variables vs pointers vs addresses, stack-fucking, loop unrolling (although I've read that GCC 3.2X does this automatically), and of course, UBER-short-circuiting, which is what I'm most excited about ... aka programming C like it's SML ! I've been wondering for quite some time how the compiler would handle such a huge line of &&'s, ||'s, and commas ! :-D
So, next I'll go through GCC 3.2X's various levels of optimization, and, after finally gprofing the IARC code, I'll be able to apply the optimizations according to the Athlon results. Once I'm done, the real optimization begins. But by then, I'll hope to understand the code finally, so it shouldn't be a problem. But believe you me ... that is UGLY code :-p
Check it out !
Optimization Results Round #1 !

Heck, I'm feelin' a bit saucy right now ... maybe I'll even finish adding the rest of the button links, quotes, search bar, and updating the javascript archive engine ! ...... ...... erm .... maybe not tonight.

Man, I'm getting really really sick of these badly-timed blogger server errors ...