Home > Storage > ObjectScale and ECS > Product Documentation > Dell ECS: GeoDrive Best Practices > Multipart threads
S3 is the protocol GeoDrive uses to send and receive data from the ECS storage platform. The S3 REST APIs provides multipart uploads which involve breaking up large files in to smaller parts and sending the parts to ECS in parallel. GeoDrive uses this attribute to improve GeoDrive upload performance. However, for restore, the S3 REST API does not offer this capability. GeoDrive simulates this behavior by initiating multiple read commands using the offset and length fields. Once all the parts of the file are received, they are combined in to the whole file and copied over to its destination. Large files greater than the multipart minimum threshold size benefits the most from this feature. Tests were run to determine the impact of increasing the multipart threads for uploads and restores. For these tests, the minimum threshold and maximum part size were set to default values of 128MB. These values represent the minimum and maximum sizes the parts should be broken up in to. For large files, throughput (MB/s) performance was where the most improvement can be seen. In the following sections, results from the tests are discussed.
For the multipart uploads, a single file of 1 GB size was uploaded to ECS. As can be seen from Figure 20, there was an 88% improvement when the value of multipart-upload was increased from 2 to 4 MPU threads.
For the multipart restore threads, a single 1 GB file restore with increasing values of multipart restore threads was performed. As pictured in Figure 21, there is a 58% improvement when increasing the multipart restore threads from 2 to 4 MPU threads.