Ok, please close your eyes now if you don't want to know about mmap,
brk, sbrk and omalloc :) This is joint debugging work with cwitty!
If the import fails it always fails after importing:
sage.rings.polynomial.all -- sage/rings/all.py:93
with
error: no more memory
System 0k:0k Appl 0k/0k Malloc 0k/0k Valloc 0k/0k Pages 0/0 Regions
0:0
strace reveals:
working version is pid 30120
failure is pid 30195
[pid 30120] stat("/space/wstein/farm/sage-3.3.alpha3/local/lib/
python2.5/site-packages/sage/rings/polynomial/
multi_polynomial_libsingular", 0x7fff39631240) = -1 ENOENT (No such
file or directory)
[pid 30195] stat("/space/wstein/farm/sage-3.3.alpha3/local/lib/
python2.5/site-packages/sage/rings/polynomial/
multi_polynomial_libsingular", 0x7fff51e26a30) = -1 ENOENT (No such
file or directory)
[pid 30120] open("/space/wstein/farm/sage-3.3.alpha3/local/lib/
python2.5/site-packages/sage/rings/polynomial/
multi_polynomial_libsingular.so", O_RDONLY) = 7
[pid 30195] open("/space/wstein/farm/sage-3.3.alpha3/local/lib/
python2.5/site-packages/sage/rings/polynomial/
multi_polynomial_libsingular.so", O_RDONLY) = 7
[pid 30120] fstat(7, {st_mode=S_IFREG|0755, st_size=1629513, ...}) = 0
[pid 30195] fstat(7, {st_mode=S_IFREG|0755, st_size=1629513, ...}) = 0
[pid 30120] open("/space/wstein/farm/sage-3.3.alpha3/local/lib/
python2.5/site-packages/sage/rings/polynomial/
multi_polynomial_libsingular.so", O_RDONLY) = 8
[pid 30195] open("/space/wstein/farm/sage-3.3.alpha3/local/lib/
python2.5/site-packages/sage/rings/polynomial/
multi_polynomial_libsingular.so", O_RDONLY) = 8
[pid 30120] read(8, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>
\0\1\0\0\0\360\366\0\0\0\0\0\0@"..., 832) = 832
[pid 30195] read(8, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>
\0\1\0\0\0\360\366\0\0\0\0\0\0@"..., 832) = 832
[pid 30120] fstat(8, {st_mode=S_IFREG|0755, st_size=1629513, ...}) = 0
[pid 30195] fstat(8, {st_mode=S_IFREG|0755, st_size=1629513, ...}) = 0
[pid 30120] mmap(NULL, 2685464, PROT_READ|PROT_EXEC, MAP_PRIVATE|
MAP_DENYWRITE, 8, 0) = 0x7f1114b6d000
[pid 30195] mmap(NULL, 2685464, PROT_READ|PROT_EXEC, MAP_PRIVATE|
MAP_DENYWRITE, 8, 0) = 0x7f492e6ed000
[pid 30120] mprotect(0x7f1114be4000, 2093056, PROT_NONE) = 0
[pid 30195] mprotect(0x7f492e764000, 2093056, PROT_NONE) = 0
[pid 30120] mmap(0x7f1114de3000, 102400, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 8, 0x76000) = 0x7f1114de3000
[pid 30195] mmap(0x7f492e963000, 102400, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 8, 0x76000) = 0x7f492e963000
[pid 30120] mmap(0x7f1114dfc000, 2584, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f1114dfc000
[pid 30195] mmap(0x7f492e97c000, 2584, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f492e97c000
[pid 30120] close(8) = 0
[pid 30195] close(8) = 0
[pid 30120] open("/space/wstein/farm/sage-3.3.alpha3/local/lib/
libsingular.so", O_RDONLY) = 8
[pid 30195] open("/space/wstein/farm/sage-3.3.alpha3/local/lib/
libsingular.so", O_RDONLY) = 8
[pid 30120] read(8, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>
\0\1\0\0\0000\201\7\0\0\0\0\0@"..., 832) = 832
[pid 30195] read(8, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>
\0\1\0\0\0000\201\7\0\0\0\0\0@"..., 832) = 832
[pid 30120] fstat(8, {st_mode=S_IFREG|0755, st_size=14065013, ...}) =
0
[pid 30195] fstat(8, {st_mode=S_IFREG|0755, st_size=14065013, ...}) =
0
[pid 30120] mmap(NULL, 5775120, PROT_READ|PROT_EXEC, MAP_PRIVATE|
MAP_DENYWRITE, 8, 0) = 0x7f11145eb000
[pid 30195] mmap(NULL, 5775120, PROT_READ|PROT_EXEC, MAP_PRIVATE|
MAP_DENYWRITE, 8, 0) = 0x7f492e16b000
[pid 30120] mprotect(0x7f111495e000, 2097152, PROT_NONE) = 0
[pid 30195] mprotect(0x7f492e4de000, 2097152, PROT_NONE) = 0
[pid 30120] mmap(0x7f1114b5e000, 57344, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 8, 0x373000) = 0x7f1114b5e000
[pid 30195] mmap(0x7f492e6de000, 57344, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 8, 0x373000) = 0x7f492e6de000
[pid 30120] mmap(0x7f1114b6c000, 3856, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f1114b6c000
[pid 30195] mmap(0x7f492e6ec000, 3856, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f492e6ec000
[pid 30120] close(8) = 0
[pid 30195] close(8) = 0
[pid 30120] gettimeofday({1233289115, 517188}, NULL) = 0
[pid 30195] gettimeofday({1233289330, 751145}, NULL) = 0
[pid 30120] brk(0x1b6a030) = 0x1b6a030
[pid 30195] brk(0x2617030) = 0x2611000
[pid 30120] brk(0x1b6b000) = 0x1b6b000
[pid 30195] brk(0x2617030) = 0x2611000
*boom* - note that brk(0x2617030) is identical in two subsequent
calls!
Linux Notes
The return value described above for brk() is the behavior
provided by the glibc wrapper function for the Linux brk() system
call. (On
most other implementations, the return value from brk() is
the same; this return value was also specified in SUSv2.) However,
the actual
Linux system call returns the new program break on success. On
failure, the system call returns the current break. The glibc
wrapper
function does some work (i.e., checks whether the new break is
less than addr) to provide the 0 and -1 return values described above.
On Linux, sbrk() is implemented as a library function that
uses the brk() system call, and does some internal bookkeeping so that
it can
return the old break value.
[pid 30120] mmap(NULL, 32768, PROT_READ|PROT_WRITE, MAP_PRIVATE|
MAP_ANONYMOUS, -1, 0) = 0x7f1131638000
[pid 30120] stat("/space/wstein/farm/sage-3.3.alpha3/local/lib/
python2.5/site-packages/sage/rings/finite_field_ntl_gf2e",
0x7fff3962ee60) = -1 ENOENT (No such file or directory)
[pid 30120] open("/space/wstein/farm/sage-3.3.alpha3/local/lib/
python2.5/site-packages/sage/rings/finite_field_ntl_gf2e.so",
O_RDONLY) = 8
[pid 30120] fstat(8, {st_mode=S_IFREG|0755, st_size=582890, ...}) = 0
[pid 30120] open("/space/wstein/farm/sage-3.3.alpha3/local/lib/
python2.5/site-packages/sage/rings/finite_field_ntl_gf2e.so",
O_RDONLY) = 9
[pid 30120] read(9, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0r
\0\0\0\0\0\0@"..., 832) = 832
[pid 30120] fstat(9, {st_mode=S_IFREG|0755, st_size=582890, ...}) = 0
[pid 30120] mmap(NULL, 2303864, PROT_READ|PROT_EXEC, MAP_PRIVATE|
MAP_DENYWRITE, 9, 0) = 0x7f11143b8000
[pid 30120] mprotect(0x7f11143e1000, 2097152, PROT_NONE) = 0
[pid 30120] mmap(0x7f11145e1000, 36864, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 9, 0x29000) = 0x7f11145e1000
[pid 30120] mmap(0x7f11145ea000, 1912, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f11145ea000
[pid 30120] close(9) = 0
[pid 30195] write(2, "\nerror: no more memory\n"..., 23) = 23
[pid 30195] write(2, "System 0k:0k Appl 0k/0k Malloc 0k"..., 72) = 72
[pid 30195] write(1, "eric -- sage/rings/padics/padic_r"..., 3848) =
3848
[pid 30195] exit_group(14) = ?
Process 30195 detached
--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---