If you only want to load (say) the first 1000 rows to look at the data, you can apply a SQL query using DB Manager (tested in 2.18). This works even for shapefiles, and is more flexible than applying Filters.
- open up Database > DB Manager
- go to Virtual Layers and choose your shapefile with lots of rows
- click on the 'sql query' button
apply a SQL query such as
select * from my_layer limit 1000;
or for a random sample of 1 in 1000 rows..
select * from newyork where randf(0.0,1.0)>0.999;
you can choose to load this in as a new layer:-
Alternatively, as you have lots of RAM, looks at Settings > Options > Data Sources, you can increase the size of the Attribute Table Row Cache. It won't speed up loading initially, but should speed up subsequent openings of the attribute table.