Debugging with v6
- To: mathgroup at smc.vnet.net
- Subject: [mg82357] Debugging with v6
- From: Art <grenander at gmail.com>
- Date: Thu, 18 Oct 2007 04:56:10 -0400 (EDT)
- Organization: University of California, Berkeley
A few questions regarding debugging in v6.0.1 (Linux 64-bit). I am a new user. Answers to any would be appreciated. 1. I work with large arrays and trivial typos in code can result in Mathematica quickly consuming all memory, then all of swap before I can abort or kill the kernel. Is there a global option to force abort when MemoryInUse[] goes beyond a certain amount, a sort of global MemoryConstrained[]? How about abort on any messages? 2. If the frontend becomes unresponsive because the kernel has used up all memory, is it possible to kill the kernel process outside the frontend with out killing the frontend? If I just kill the kernel process, a popup appears telling me that Mathematica wasn't able complete a dynamic evaluation. If I select abort on the popup, the frontend crashes. 3. I have difficulty getting the debugger tools to work. What is the criteria for execution to stop at a breakpoint? Do you have to re-execute the code (such as a function) that contains the breakpoint after you have defined the breakpoint? Most of the time, I can't get the debugger to stop at the defined breakpoint. This is true also in Workbench (where you select a line rather than an expression). Often, the frontend hangs if I look at any of the local variables in the stack display and stepping in debug mode is often too slow to be usable. The only helpful documentation I have found for the debugger is the screencast for Workbench and a short post in this forum. It is pretty buggy on my platform. I would love to use it. I will learn to use Trace[] instead. Thanks.