why not use fragment shaders and http://gpgpu.org/ techniques? it's much much much faster in my experience (both coding time and runtime efficiency).
and it's been done already!
/usr/lib/pd/doc/Gem/10.glsl/04.game_of_life.pd
caveat: i haven't tried your patch, but given a similar 256x256 fragment shader iteration generally runs at around 450fps here, it would almost certainly be faster to use pix_snap with pix_data (in raw OpenGL i'd use glCopyTexImage if i remember the name correctly, but I don't know if there's Gem support for that) if you want to extract the data and do other things with it.