Upload - performance tests. | ||
Article, Upload - performance tests. | ||
Member of ScriptUtils.ASPForm |
Dim Form: Set Form = Server.CreateObject("ScriptUtils.ASPForm") If Form.State = 0 Then Form.Files(1).SaveAs "f:\Uploads\UpFile" End If
HugeASP upload, isolated |
|
HugeASP upload, in-process | ||||
|
Consumed |
|
|
Consumed | ||
FileSize [MB] |
Memory [MB] |
Processor [ms] |
|
FileSize [MB] |
Memory [MB] |
Processor [ms] |
0 |
14.7 |
- |
|
0 |
10.7 |
- |
4 |
14.9 |
721 |
|
4 |
10.8 |
420 |
8 |
14.9 |
1 211 |
|
8 |
10.8 |
640 |
16 |
14.9 |
2 293 |
|
16 |
10.8 |
1 251 |
32 |
14.9 |
5 257 |
|
32 |
10.8 |
2 723 |
48 |
14.9 |
8 011 |
|
48 |
10.8 |
3 805 |
64 |
14.9 |
10 294 |
|
64 |
10.8 |
5 417 |
128 |
14.9 |
21 301 |
|
128 |
10.8 |
10 905 |
256 |
14.9 |
41 820 |
|
256 |
10.8 |
21 060 |
512 |
14.9 |
82 859 |
|
512 |
10.8 |
41 920 |
1 024 |
14.9 |
173 609 |
|
1 024 |
10.8 |
86 874 |
2 047 |
14.9 |
344 895 |
|
2 047 |
10.8 |
174 257 |
These two tables show you that HugeASP upload does not consume much memory. So most important value is consumed time. This time correspond to upload time of file.
It looks like ASP has some problems with reading binary data from inetinfo process when it runs in separate memory process. ASP takes the same time for upload (read file from client) as for transferring data between inetinfo.exe and dllhost.exe.
I tested PureASP upload with many clients - consumed memory/processor resources depends linearly on number of clients.
If Request.ServerVariables("REQUEST_METHOD") = "POST" Then Set Upload = GetUpload() Upload("MyFile").Value.SaveAs "f:\Uploads\UpFile" End If
PureASP upload | |||
FileSize |
Consumed | ||
[MB] |
Memory [MB] |
Memory peak[MB] |
Processor [ms] |
0 |
16.9 |
16.9 |
0 |
0 |
17.7 |
18.0 |
180 |
1 |
18.6 |
19.5 |
510 |
1 |
20.3 |
21.9 |
1 311 |
2 |
23.2 |
27.9 |
4 416 |
3 |
26.8 |
32.8 |
9 403 |
4 |
29.5 |
36.4 |
16 433 |
8 |
43.8 |
55.2 |
62 049 |
16 |
65.2 |
97.8 |
236 870 |
32 |
113.5 |
178.1 |
921 835 |
There is no good idea to use PureASP upload to upload files with size greater than 16MB. PureASP upload takes 100 times more processor time than Huge upload for 16MB file.
3. Results.