Challenge Overview
Project Overview
TopCoder Competition Engine is a system used for Single Round Matches (SRM) and Marathon Matches (MM). We are seeking solutions to get the memory usage when executing SRM solutions, so competitors can get a better understanding of their submission.
Previously, we have implemented the way to return peak memory usage for executing C++ and Python Solution in SRM.
Competition Task Overview
For this contest, we'd like to explore the way to get the peak memory usage for the SRM Java solutions, similar as C++ and Python solution.
Following are the general requirements:
- The solution should not affect the execution thread, like it causes the execution to cost more times.
- The solution should cover the exeuction of Java language.
- It should return the peak (maximum) memory used by the execution.
- The size of used memory should be in MB format, if the memory is not monitored like value (-1), use message N/A for this case.
- The changes should applied to all phases, like Example Tests, System Tests and Practices, no need for challenge phase.
- The memory size should be the heap size, as you can see the memory limit control is also doing against -Xms -Xmx
Implementation Notes
The test execution logic can be found at
Arena VM Usage
Before asking your own VM, you need to have a public key on your profile before asking for the VM.
You can find more details on how to generate a key http://apps.topcoder.com/wiki/display/projects/Generate+SSH+Key and how to connect using it http://apps.topcoder.com/wiki/display/projects/Connect+Using+SSH+Key.
Please reference http://apps.topcoder.com/wiki/display/docs/Competition+Engine+VM+Setup for general usage.
Previously, we have made several update for the Arena VM. So when the Arena VM allocated is available for you, there is a problem and a SRM contest already setup, you can reuse that for testing.
Final Submission Guidelines
Submission Deliverables
Below is an overview of the deliverables:
- Code Changes for getting and displaying the used memory
- Detail Deployment Guide describing your solution.
Final Submission
For each member, the final submission should be uploaded to the Online Review Tool.