我必须编写一个程序(perl、python 或 java)来模拟我们服务器上的工作负载,这样它就需要 2 个参数:
记忆
时间
并且基于这些参数,它应该启动一个进程,在指定的时间内消耗指定的内存量。内存的最大值可以高达 50-100GB,时间可以高达 12-24 小时。
我不能使用 fork 或多线程,这个过程应该是一个单线程并且应该不断地进行操作(比如整数/浮点等)。我也不想做任何 I/O 操作。
我能想到的最简单的方法是:
1. while(timeSpent < timeLimit || memoryConsumed < memorySpecified){
2. if(memoryConsumed < ){
3. Add random number to ArrayList
4. }else{
5. Multiply all numbers (Do some exception handling to prevent this from overflowing)
6. }
7. }
请让我知道是否有更好的方法来做到这一点。
谢谢,
阿米特