using density instead of average_nonzero in accordance with the new throughput benchmark