[PATCH] XCore target: use TEST_TARGET_FLAGS to override target's memory size.

robert lytton robert at xmos.com
Wed Mar 12 01:48:52 PDT 2014


  Hi Daniel,

  The default memory map for the xcore tools is 64KB - but it is over-ridden from the command line.
  Initially I gave all the tests more than enough memory from the command line - but this requires a lot of memory for the emulator's tables etc,
  the tests take a little longer to run due to the need to initialize the tables for memory that will never be used and
  this extra initialization of tables would cause thrashing on a machine with only a few GB of memory.
  Hence, the default of 32MB (~500MB emulator memory) that I pass in from the command line.

  The 32 tests that require more than 32MB have the command line default overwritten individually using TEST_TARGET_FLAGS (one test has the 32MB reduced).
  I could reduce the granularity by using 256MB for all of the 'SingleSource/Benchmarks/Polybench/linear-algebra/kernels' tests but this will add substantial overheads to the tests.
  An alternative approach would be to add a shim layer between test-suite and the XCore compiler which will have knowledge of the tests it is building... seems a bad idea.

  I could add multiple environment variables for various memory sizes and then pick the size required - removing the noise viz:
      ifeq ($(ARCH),XCore)
      TEST_TARGET_FLAGS += "$(XCORE_256MB)"
      endif

  I await your thoughts as it is not clear to me the best way forward.

  Robert

http://llvm-reviews.chandlerc.com/D3048



More information about the llvm-commits mailing list