Algorithms And Data Structures For Cache-Efficient Computation: Theory And Experimental Evaluation