|
3.11 memory
Syntax:
memory ( int_expression )
Type:
- int
Purpose:
- returns statistics concerning the memory management:
memory(0) is the number of active (used) bytes,
memory(1) is the number of bytes allocated from the
operating system,
memory(2) is the maximal number of bytes ever allocated from the
operating system during the current PLURAL session.
Note:
- To monitor the memory usage during ongoing computations the option
mem should be set (using the command option(mem); .
Example:
| ring r=0,(x(1..100)),dp;
ncalgebra(-1,0);
poly p=(x(1)+x(100))^50;
proc ReportMemoryUsage()
{ "Memory currently used by SINGULAR :",memory(0),"Byte (",
memory(0)/101023, "KByte)" +newline+
"Memory currently allocated from system:",memory(1), "Byte (",
memory(1)/1023, "KByte)";
"Maximal memory allocated from system :",memory(2), "Byte (",
memory(2)/1023, "KByte)";
}
ReportMemoryUsage();
==> Memory currently used by SINGULAR : 3976388 Byte ( 39 KByte)
==> Memory currently allocated from system: 4499188 Byte ( 4398 KByte)
==> Maximal memory allocated from system : 4499188 Byte ( 4398 KByte)
kill p;
ReportMemoryUsage(); // less memory used: p killed
==> Memory currently used by SINGULAR : 3970528 Byte ( 39 KByte)
==> Memory currently allocated from system: 4499188 Byte ( 4398 KByte)
==> Maximal memory allocated from system : 4499188 Byte ( 4398 KByte)
kill r;
|
See also:
option.
|