Uploaded image for project: 'SystemDS'
  1. SystemDS
  2. SYSTEMDS-845

Compare Performance of LeNet Scripts With & Without Using SystemML-NN

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • SystemML 0.11
    • SystemML 0.11
    • Algorithms, Compiler
    • None

    Description

      This JIRA issue tracks the comparison of the performance of the LeNet scripts with & without using SystemML-NN. The goal is that they should have equal performance in terms of both accuracy and time. Any difference will be indicate areas of engine improvement.

      Scripts:

      Current Status - Forced Singlenode:

      Equal performance when running the scripts in standalone mode with the -exec singlenode flag, 20GB of memory, and using data inputs in the SystemML binary format – see run.sh and perf.sh for information.

      Results:

      • Run #1:
        Script Time (s) Accuracy
        mnist_lenet-train.dml 2987.400704441 99.32%
        lenet-train.dml 2816.369435579 99.28%
      • Run #2:
        Script Time (s) Accuracy
        mnist_lenet-train.dml 2847.790531812 99.16%
        lenet-train.dml 2950.520494210 99.18%

      So, same accuracy, and same runtime in singlenode mode!

      Current Status - Spark Local:

      The two scripts now have the same performance in Spark local mode (non-singlenode), equivalent to the performance in forced singlenode mode due to the creation of only CP jobs!

      To fully reproduce, I basically created a directory, placed the two attached bash scripts in it, grabbed a copy of the NN library and placed it into the directory, ran the examples/get_mnist_data.sh script from the library to get the data (placed into examples/data), then used the attached convert.dml to create binary copies of the data for both scripts, then ran run.sh. Also, I copied examples/data to the base directory as well. Adjust the EXEC and related variables in perf.sh to switch between standalone, Spark, memory sizes, explain, stats, etc.

      Attachments

        1. convert.dml
          0.4 kB
          Mike Dusenberry
        2. lenet-train-spark-explain.log
          55 kB
          Mike Dusenberry
        3. lenet-train-spark-explain-recompile-hops.log
          831 kB
          Mike Dusenberry
        4. log08.03.16-1470268602.txt
          40 kB
          Mike Dusenberry
        5. mnist_lenet-train-spark-explain.log
          86 kB
          Mike Dusenberry
        6. mnist_lenet-train-spark-explain-recompile-hops.log
          3.59 MB
          Mike Dusenberry
        7. perf.sh
          2 kB
          Mike Dusenberry
        8. run.sh
          0.2 kB
          Mike Dusenberry

        Issue Links

          Activity

            People

              dusenberrymw Mike Dusenberry
              dusenberrymw Mike Dusenberry
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: