Announcement

Collapse
No announcement yet.

EFS crashing with no error

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • EFS crashing with no error

    Hi All,

    I have coded an efs formula that backtests all possible variable values (within a given range) and it works fine on small numbers of bars / variable range, but when increasing the number of bars / variable range to test, eSignal exits after about 30 mins of testing. Memory usage is a constant 350-360MB, and well within the memory available (currently 500mb) I can only assume there has been an internal heap size, or stack problem within eSignal.

    The back-testing has been written as a function, and would typcially loop around 250 times with no prblem, but when I extend the number of tests, and therefore the number of loops (using reloadEFS()) beyond 4-500 the system fails.

    Any ideas?

    many thanks in advance

  • #2
    Hello tj.dale,

    Are you printing info to the formula output window during this process? That could be one possible cause. If that file is not being cleared periodically, the size of that file can get fairly large, which will slow down your process or even crash eSignal. You might want to use File I/O as an alternative.

    Are you getting a crash when you say the system fails?
    Jason K.
    Project Manager
    eSignal - an Interactive Data company

    EFS KnowledgeBase
    JavaScript for EFS Video Series
    EFS Beginner Tutorial Series
    EFS Glossary
    Custom EFS Development Policy

    New User Orientation

    Comment


    • #3
      Hi Jason,

      I am using debugprint only when the test completes. I will output this to file instead to se if this iliminates the issue.

      with regard to your question, eSignal merely exits with no error or crash, leaving the datamanager running only.

      Comment


      • #4
        Having now made all back-test loops write to a file, the system runs upto 12,000 tests before exiting with no error.

        The back-tests are being completed correctly.

        any ideas?

        Comment


        • #5
          Hello tj.dale,

          The manner in which you are using the reloadEFS() function was not the original purpose for the function. Your usage of this function to create a back-test optimization routine is very clever. Why it's crashing eSignal is difficult to say without trying to recreate what you are doing. I imagine it's probably a stack or memory issue. Regardless, this is something you should handle on your end. Keep track of the number of loops as you are and force the routine to terminate at X numbers of loops.
          Jason K.
          Project Manager
          eSignal - an Interactive Data company

          EFS KnowledgeBase
          JavaScript for EFS Video Series
          EFS Beginner Tutorial Series
          EFS Glossary
          Custom EFS Development Policy

          New User Orientation

          Comment


          • #6
            The default EFS heap size is 16MB. You can increase this in Tools -> EFS -> Settings.

            However, I would suggest in your case to write out to the file in batches.. perhaps every 2000 records append to that output file? I think your memory performance overall would be much better.

            Comment


            • #7
              Many thanks for the suggestions all, I shall keep beavering away to see if I can get this to hang together.

              Many thanks for your patience

              Comment

              Working...
              X