Announcement

Collapse
No announcement yet.

Test multiple filesystems

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

  • Test multiple filesystems

    Hello,

    I would like to test the performances of multiple filesystems or options on those filesystems. It seems that pts does its testing in / (probably in /tmp ?). Would there be a way to do the tests on different mount points (I am using Ubuntu Linux as sandbox).

    I am very new to pts, so this might be easy and straightforward but I haven't found documentation yet on how to do so.

    Thanks for any advice,

  • #2
    Normally it installs to ~/.phoronix-test-suite/installed-tests/ but you can change that location in ~/.phoronix-test-suite/user-config.xml to reflect other mount points.
    Michael Larabel
    https://www.michaellarabel.com/

    Comment


    • #3
      Yes ! I discovered that (doc isn't really clear on that).

      So, I wrote a simple script based on this idea to run tests in user defined path.
      First, I have a template of user-config.xml where every ~/.phoronix-test-suite item has been replaced by a HOMEDIR string
      Code:
      <?xml version="1.0"?>
      <!--Phoronix Test Suite v3.4.0 (Lillesand)-->
      <?xml-stylesheet type="text/xsl" href="xsl/pts-user-config-viewer.xsl"?>
      <PhoronixTestSuite>
        <Options>
          <OpenBenchmarking>
            <AnonymousUsageReporting>FALSE</AnonymousUsageReporting>
            <AnonymousSoftwareReporting>FALSE</AnonymousSoftwareReporting>
            <AnonymousHardwareReporting>FALSE</AnonymousHardwareReporting>
            <IndexCacheTTL>3</IndexCacheTTL>
            <AlwaysUploadSystemLogs>FALSE</AlwaysUploadSystemLogs>
          </OpenBenchmarking>
          <General>
            <DefaultBrowser></DefaultBrowser>
            <UsePhodeviCache>TRUE</UsePhodeviCache>
            <DefaultDisplayMode>DEFAULT</DefaultDisplayMode>
          </General>
          <Modules>
            <LoadModules>toggle_screensaver, update_checker</LoadModules>
          </Modules>
          <Installation>
            <RemoveDownloadFiles>FALSE</RemoveDownloadFiles>
            <SearchMediaForCache>TRUE</SearchMediaForCache>
            <SymLinkFilesFromCache>FALSE</SymLinkFilesFromCache>
            <PromptForDownloadMirror>FALSE</PromptForDownloadMirror>
            <EnvironmentDirectory>HOMEDIR/installed-tests/</EnvironmentDirectory>
            <CacheDirectory>HOMEDIR/download-cache/</CacheDirectory>
          </Installation>
          <Testing>
            <SaveSystemLogs>TRUE</SaveSystemLogs>
            <SaveInstallationLogs>FALSE</SaveInstallationLogs>
            <SaveTestLogs>FALSE</SaveTestLogs>
            <RemoveTestInstallOnCompletion></RemoveTestInstallOnCompletion>
            <ResultsDirectory>HOMEDIR/test-results/</ResultsDirectory>
            <AlwaysUploadResultsToOpenBenchmarking>FALSE</AlwaysUploadResultsToOpenBenchmarking>
          </Testing>
          <TestResultValidation>
            <DynamicRunCount>TRUE</DynamicRunCount>
            <LimitDynamicToTestLength>20</LimitDynamicToTestLength>
            <StandardDeviationThreshold>3.50</StandardDeviationThreshold>
            <ExportResultsTo></ExportResultsTo>
          </TestResultValidation>
          <BatchMode>
            <SaveResults>TRUE</SaveResults>
            <OpenBrowser>FALSE</OpenBrowser>
            <UploadResults>FALSE</UploadResults>
            <PromptForTestIdentifier>FALSE</PromptForTestIdentifier>
            <PromptForTestDescription>FALSE</PromptForTestDescription>
            <PromptSaveName>FALSE</PromptSaveName>
            <RunAllTestCombinations>TRUE</RunAllTestCombinations>
            <Configured>TRUE</Configured>
          </BatchMode>
          <Networking>
            <NoNetworkCommunication>FALSE</NoNetworkCommunication>
            <Timeout>20</Timeout>
            <ProxyAddress></ProxyAddress>
            <ProxyPort></ProxyPort>
          </Networking>
        </Options>
      </PhoronixTestSuite>
      Then, I use a small bash code using sed to replace the user-config.xml by the template and change in it every HOMEDIR string by a defined path, and then run phoronix-test-suite.
      Code:
      #! /bin/bash
      
      if [ $# -ne 3 ] ; then
          echo "Usage : $(basename  $0) MODE TEST PATH"
          exit 1
      fi
      # Get the run mode (benchmark, install or run)
      
      MODE=$1
      shift
      
      TEST=$1
      shift
      
      # Get the path 
      MYPATH=$1
      
      shift
      
      # Change the run path to pts
      cp ~/.phoronix-test-suite/user-config.xml-template ~/.phoronix-test-suite/user-config.xml
      sed -i "s#HOMEDIR#$MYPATH#g" ~/.phoronix-test-suite/user-config.xml
      
      /usr/bin/phoronix-test-suite $MODE $TEST
      It's short, no error checking, but, if that helps...

      Comment


      • #4
        Yes ! I discovered that after asking on this forum (doc isn't really clear on that or I didn't take enough time to read it).

        So, I wrote a simple script based on this idea to run tests in user defined path.
        First, I have a template of user-config.xml where every ~/.phoronix-test-suite item has been replaced by a HOMEDIR string
        Code:
        <?xml version="1.0"?>
        <!--Phoronix Test Suite v3.4.0 (Lillesand)-->
        <?xml-stylesheet type="text/xsl" href="xsl/pts-user-config-viewer.xsl"?>
        <PhoronixTestSuite>
          <Options>
            <OpenBenchmarking>
              <AnonymousUsageReporting>FALSE</AnonymousUsageReporting>
              <AnonymousSoftwareReporting>FALSE</AnonymousSoftwareReporting>
              <AnonymousHardwareReporting>FALSE</AnonymousHardwareReporting>
              <IndexCacheTTL>3</IndexCacheTTL>
              <AlwaysUploadSystemLogs>FALSE</AlwaysUploadSystemLogs>
            </OpenBenchmarking>
            <General>
              <DefaultBrowser></DefaultBrowser>
              <UsePhodeviCache>TRUE</UsePhodeviCache>
              <DefaultDisplayMode>DEFAULT</DefaultDisplayMode>
            </General>
            <Modules>
              <LoadModules>toggle_screensaver, update_checker</LoadModules>
            </Modules>
            <Installation>
              <RemoveDownloadFiles>FALSE</RemoveDownloadFiles>
              <SearchMediaForCache>TRUE</SearchMediaForCache>
              <SymLinkFilesFromCache>FALSE</SymLinkFilesFromCache>
              <PromptForDownloadMirror>FALSE</PromptForDownloadMirror>
              <EnvironmentDirectory>HOMEDIR/installed-tests/</EnvironmentDirectory>
              <CacheDirectory>HOMEDIR/download-cache/</CacheDirectory>
            </Installation>
            <Testing>
              <SaveSystemLogs>TRUE</SaveSystemLogs>
              <SaveInstallationLogs>FALSE</SaveInstallationLogs>
              <SaveTestLogs>FALSE</SaveTestLogs>
              <RemoveTestInstallOnCompletion></RemoveTestInstallOnCompletion>
              <ResultsDirectory>HOMEDIR/test-results/</ResultsDirectory>
              <AlwaysUploadResultsToOpenBenchmarking>FALSE</AlwaysUploadResultsToOpenBenchmarking>
            </Testing>
            <TestResultValidation>
              <DynamicRunCount>TRUE</DynamicRunCount>
              <LimitDynamicToTestLength>20</LimitDynamicToTestLength>
              <StandardDeviationThreshold>3.50</StandardDeviationThreshold>
              <ExportResultsTo></ExportResultsTo>
            </TestResultValidation>
            <BatchMode>
              <SaveResults>TRUE</SaveResults>
              <OpenBrowser>FALSE</OpenBrowser>
              <UploadResults>FALSE</UploadResults>
              <PromptForTestIdentifier>FALSE</PromptForTestIdentifier>
              <PromptForTestDescription>FALSE</PromptForTestDescription>
              <PromptSaveName>FALSE</PromptSaveName>
              <RunAllTestCombinations>TRUE</RunAllTestCombinations>
              <Configured>TRUE</Configured>
            </BatchMode>
            <Networking>
              <NoNetworkCommunication>FALSE</NoNetworkCommunication>
              <Timeout>20</Timeout>
              <ProxyAddress></ProxyAddress>
              <ProxyPort></ProxyPort>
            </Networking>
          </Options>
        </PhoronixTestSuite>
        Then, I use a small bash code using sed to replace the user-config.xml by the template and change in it every HOMEDIR string by a defined path, and then run phoronix-test-suite.
        Code:
        #! /bin/bash
        
        if [ $# -ne 3 ] ; then
            echo "Usage : $(basename  $0) MODE TEST PATH"
            exit 1
        fi
        # Get the run mode (benchmark, install or run)
        
        MODE=$1
        shift
        
        TEST=$1
        shift
        
        # Get the path 
        MYPATH=$1
        
        shift
        
        # Change the run path to pts
        cp ~/.phoronix-test-suite/user-config.xml-template ~/.phoronix-test-suite/user-config.xml
        sed -i "s#HOMEDIR#$MYPATH#g" ~/.phoronix-test-suite/user-config.xml
        
        /usr/bin/phoronix-test-suite $MODE $TEST
        It's short, no error checking, but, if that helps...

        Comment


        • #5
          Originally posted by jgaret View Post
          Yes ! I discovered that after asking on this forum (doc isn't really clear on that or I didn't take enough time to read it).

          So, I wrote a simple script based on this idea to run tests in user defined path.
          First, I have a template of user-config.xml where every ~/.phoronix-test-suite item has been replaced by a HOMEDIR string
          Code:
          <?xml version="1.0"?>
          <!--Phoronix Test Suite v3.4.0 (Lillesand)-->
          <?xml-stylesheet type="text/xsl" href="xsl/pts-user-config-viewer.xsl"?>
          <PhoronixTestSuite>
            <Options>
              <OpenBenchmarking>
                <AnonymousUsageReporting>FALSE</AnonymousUsageReporting>
                <AnonymousSoftwareReporting>FALSE</AnonymousSoftwareReporting>
                <AnonymousHardwareReporting>FALSE</AnonymousHardwareReporting>
                <IndexCacheTTL>3</IndexCacheTTL>
                <AlwaysUploadSystemLogs>FALSE</AlwaysUploadSystemLogs>
              </OpenBenchmarking>
              <General>
                <DefaultBrowser></DefaultBrowser>
                <UsePhodeviCache>TRUE</UsePhodeviCache>
                <DefaultDisplayMode>DEFAULT</DefaultDisplayMode>
              </General>
              <Modules>
                <LoadModules>toggle_screensaver, update_checker</LoadModules>
              </Modules>
              <Installation>
                <RemoveDownloadFiles>FALSE</RemoveDownloadFiles>
                <SearchMediaForCache>TRUE</SearchMediaForCache>
                <SymLinkFilesFromCache>FALSE</SymLinkFilesFromCache>
                <PromptForDownloadMirror>FALSE</PromptForDownloadMirror>
                <EnvironmentDirectory>HOMEDIR/installed-tests/</EnvironmentDirectory>
                <CacheDirectory>HOMEDIR/download-cache/</CacheDirectory>
              </Installation>
              <Testing>
                <SaveSystemLogs>TRUE</SaveSystemLogs>
                <SaveInstallationLogs>FALSE</SaveInstallationLogs>
                <SaveTestLogs>FALSE</SaveTestLogs>
                <RemoveTestInstallOnCompletion></RemoveTestInstallOnCompletion>
                <ResultsDirectory>HOMEDIR/test-results/</ResultsDirectory>
                <AlwaysUploadResultsToOpenBenchmarking>FALSE</AlwaysUploadResultsToOpenBenchmarking>
              </Testing>
              <TestResultValidation>
                <DynamicRunCount>TRUE</DynamicRunCount>
                <LimitDynamicToTestLength>20</LimitDynamicToTestLength>
                <StandardDeviationThreshold>3.50</StandardDeviationThreshold>
                <ExportResultsTo></ExportResultsTo>
              </TestResultValidation>
              <BatchMode>
                <SaveResults>TRUE</SaveResults>
                <OpenBrowser>FALSE</OpenBrowser>
                <UploadResults>FALSE</UploadResults>
                <PromptForTestIdentifier>FALSE</PromptForTestIdentifier>
                <PromptForTestDescription>FALSE</PromptForTestDescription>
                <PromptSaveName>FALSE</PromptSaveName>
                <RunAllTestCombinations>TRUE</RunAllTestCombinations>
                <Configured>TRUE</Configured>
              </BatchMode>
              <Networking>
                <NoNetworkCommunication>FALSE</NoNetworkCommunication>
                <Timeout>20</Timeout>
                <ProxyAddress></ProxyAddress>
                <ProxyPort></ProxyPort>
              </Networking>
            </Options>
          </PhoronixTestSuite>
          Then, I use a small bash code using sed to replace the user-config.xml by the template and change in it every HOMEDIR string by a defined path, and then run phoronix-test-suite.
          Code:
          #! /bin/bash
          
          if [ $# -ne 3 ] ; then
              echo "Usage : $(basename  $0) MODE TEST PATH"
              exit 1
          fi
          # Get the run mode (benchmark, install or run)
          
          MODE=$1
          shift
          
          TEST=$1
          shift
          
          # Get the path 
          MYPATH=$1
          
          shift
          
          # Change the run path to pts
          cp ~/.phoronix-test-suite/user-config.xml-template ~/.phoronix-test-suite/user-config.xml
          sed -i "s#HOMEDIR#$MYPATH#g" ~/.phoronix-test-suite/user-config.xml
          
          /usr/bin/phoronix-test-suite $MODE $TEST
          It's short, no error checking, but, if that helps...
          There also might be a PTS_INSTALL_DIR environmental variable for overriding the location cleanly instead of using the user-config.xml for the install location. Though I don't remember offhand if it's still in the code or not as I wrote that part probably two years ago, but you can check the environmental variables section of the documentation to see if it's still there.
          Michael Larabel
          https://www.michaellarabel.com/

          Comment

          Working...
          X