Use block ID to offset shared memory addressing
Remove dead code
Get rid of register "cache" optimization