I am fairly new to OS X Cocoa programming but have decided to give it a go with the new Swift language.
I have an NSTableView with 1500
Recently they have introduced the concept called "Reuse queues", where in only the rows which are currently visible are actually there in the table. The rows which go out of the clip, while scrolling are replaced by the newly introduced rows. This was introduced for performance enhancements. But considering million x 7 views, I suppose there might be a lot of CPU cycles wasted in reuse queue.
Also cells are light weight as compared to views.
If possible you can consider, restructuring the single tableview to multiple tableviews. Practically human being needs to view the data with atleast some simple predicate in their mind. For example, in an organization you might want to view
instead of viewing all employee details at a time.
Thus initializing a table view, only with the required information would enhance both, the performance and UX.