use SmartArrayInt in PartitionCollection to save memory;
use FileCacheArc in PartitionCollection