Welcome

This is the personal website of Liam Kiemele. Here you will be able to find information with regards to current past project and publications. Enjoy your stay.
-Liam

This is the personal website of Liam Kiemele. Here you will be able to find information with regards to current past project and publications. Enjoy your stay.
-Liam
You make think this is a trivial difference, but I just did some work which shows that they really aren't.
Object oriented programming is great, but often doesn't give us the storage method we need to optimize memory use and in the end, optimize performance. Vectorization requires contiguous memory access and even if code isn’t vectorized, having memory contiguous and aligned can make for huge performance boosts.
So when we look at these two terms, what do they mean and what do they get us?
I made a short presentation on what I think a game needs to be considered a game and then narrated it. I'm posting it here because I think it is kind of interesting and details what I believe to be the minimum requirement for something to be considered a game.
A really quick and dirty quide. I've also attached a template: You can get it here
Westgrid accounts take about 24 hours to set up, so you may have to wait a little while before diving in.
I'm currently working on a small piece of software which will count the number black pixels in a frame of video and determine if there is anything worth seeing. So far so good, but it's hard to get a good idea of how well it's working using standard videos. I created a few test ones and I'm posting them here. Maybe if you're working on similar software they will come in handy.
They are all the same video, at different resolutions:
After a three month internship at IMEC in the Exascale lab and an additional two month europe trip I am now back at the Univerisity of Victoria to complete my masters. The trip was great, but it is also great to be home. I'm moving into a new place and that is keeping me busy. I should be able to get right into things tomorrow and I'm looking forward to this semester.
--Liam
Our paper in SECSE 2011 is now available online here: Mind the gap!: bridging the dichotomy of design and implementation
That's pretty cool. I guess after awhile researches have a ton of papers, but everyone starts somewhere!
--Liam
I moved my OpenCL Conjugate Gradient method to the AMD Radeon 6990 GPU and the results are not great, but also not totally unexpected. Using my standard 52000 by 52000 benchmark, currently the execution time is around 5 seconds and this isn't good considering that on an Intel i7 720QM(2 year old processor) I had it running at 0.63 seconds and on a much newer i7 2600K it at 0.43 seconds. That's not even using Intel's OpenCL runtime. It could get faster. Maybe I should get the word out to Intel...
I am currently in the process of getting my CG code to work on a brand new top of the line, I'm pretty sure the fastest in the world, AMD Radeon 6990 Graphics Card. Which is actually two 6970's stacked on top of each other. All in all my test machine is perhaps the greatest gaming rig I have ever seen.
Apparently I graduated with a GPA of 8.04 and was in the top 20% of my class. As such I made the Dean's List. That's pretty cool.