New answers tagged optimization
If you really really really wants to you can store the data as a 1D array with each 2 pairs means an block's x and y position. Like so [-2,0,-1,0,1,0,2,0] with (0,0) being the implicit center of rotation. You can improve on this further by not using array of ints but pack your data into the smallest bits possible.
There is literally no good option other than testing on a range of target hardware. Simply testing on slower hardware isn't enough. Older cards are often on different driver series, meaning that they support a lower version of Direct3D or OpenGL. Cards of similar speeds but from different manufacturers will have different behavior. The behavior can differ ...
If you want to stick with the hardware route, you may want to invest into a Dual-PCI motherboard specifically for this scenario. In my previous setup I had a GTX970 and an older GT640. Switching between GPUs will require you to reboot, go into BIOS and select a primary. I've since dumped the 640 in favor of the built-in HD4400 in my i7 4770K. Check your CPU ...
Top 50 recent answers are included