Like you, I implemented an NSView based spreadsheet-like grid only to find out that it wasn't performant. Initially I thought it was me but some searching the web has me more at ease that I was taking the wrong approach (NSViews). I'm now at the point where I am researching various alternative approaches. In particular, layers are a contender and given that you have a desire to port this to iOS (which is very layer oriented) I wondered why you went for cells instead?