Ticket #706 (new bug)

Opened 6 years ago

Last modified 4 years ago

Out of mem (PASM, compreg, invokecc)

Reported by: mj41 Owned by:
Priority: normal Milestone:
Component: core Version: trunk
Severity: medium Keywords:
Cc: Language:
Patch status: Platform: win32

Description

Attached test use compreg P1, "PASM" and invokecc it 100,000 times. On i386-MSWin32 (mingw32) it consumes 66MB of RAM with r39159 (107 MB of RAM with r11704).

If you replace "lt I20, 100000, NEXT" to "lt I20, 10000000, NEXT" it fails with "Parrot VM: PANIC: Out of mem! C file src\gc\alloc_memory.c, line 142".

set S28, ""
concat S28, ".pcc_sub :anon _indi:\n"
concat S28, " get_params \"(0,0,0)\", I0, I1, I2\n"
concat S28, " set I3, 23\n"
concat S28, " set_returns \"(0)\", I3\n"
concat S28, " returncc\n"

compreg P1, "PASM"
set I20, 0

NEXT:
set_args "(0)",S28
get_results "(0)", P0
invokecc P1

needs_destroy P0
sweep 0

inc I20
lt I20, 100000, NEXT

# sleep 10

end

Attachments

bad-int-t2.pasm Download (437 bytes) - added by mj41 6 years ago.

Change History

Changed 6 years ago by mj41

Changed 5 years ago by jkeenan

  • component changed from none to core

Changed 5 years ago by mj41

Update: r40959 59.5 MB of RAM ( or 565.3 MB with 'lt I20, 1000000, NEXT').

Changed 5 years ago by mj41

Update: r44133 68MB of RAM (or 675 MB with 'lt I20, 1000000, NEXT'). Memory "measured" with MS WinXP Task Manager.

Changed 4 years ago by nwellnhof

Probably related to #783

Note: See TracTickets for help on using tickets.