Same file? in that case, why are you uploading it again.
Your server will allocate memory to scripts to run in. This has absolutely nothing to do with whether it is a "virtual machine" or not. Sorry, but physical memory is always needed.
How much memory the server allocates you depends on the setting of your memory limit in PHP.ini and the amount of memory the server things is "reasonalbe", whichever is less. It that memory is not sufficient to hold the zip file for processing, the processing will fail.
There may have been some work done in the development release to reduce the memory requried for zip processing. You did not say what version of zenphoto you were using (either). Maybe the nightly build will be better for you.