1 / 12

MTToGDS - Disclaimer

“All dancing bears depicted in this presentation are fictitious. Any similarity to any person living or dead is merely coincidental.". MTToGDS - Disclaimer. Milestones and Features Object model MTT client changes MTT output in XML format Open Issues. Agenda . Milestone #1:

tex
Download Presentation

MTToGDS - Disclaimer

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. “All dancing bears depicted in this presentation are fictitious. Any similarity to any person living or dead is merely coincidental." MTToGDS - Disclaimer

  2. Milestones and Features Object model MTT client changes MTT output in XML format Open Issues Agenda

  3. Milestone #1: Mtt will dump test results in XML format, preserving all phase relations New script: mtt-gds-submit-results.py – will parse XML files generated by mtt and submit results to GDS Milestone #2: New script: mtt-gds-query.py – query GDS by user provided criteria and generate simple reports Milestone #3 : Mtt integration with GDS related scripts. Milestones and Features

  4. Object Model BuildPhase TestSession InstallPhase RunPhase

  5. TestSession class contains mtt session related info (org name, start/end dates, test description, …) BuildPhase class contains information for every test built with mtt. (compiler related info, build messages and flows) InstallPhase class contains info for every MPI instance used in the specific TestSession. It is also points to corresponding MPI BuildPhase object. (mpi version, mpi name, mpi pathes, confugure options, stdout/in/err) RunPhase class contains runtime info for specific test. (os, start/end dates, stdout/err/in,…). RunPhase points to its corresponding BuildPhase and InstallPhase objects. Object Model – description

  6. # create mtt session objects with all MPI related params mttSession = models.TestSession() # create phase related objects buildTestPhase = models.BuildTestPhase() runTestPhase = models.RunTestPhase() mpiInstTestPhase = models.InstallTestPhase() # setup relations between phases and set phase specific attributes buildTestPhase.session = mttSession buildTestPhase.compiler_name = “gnu” buildTestPhase.suite = “intel” Object Model (example)

  7. # MPI Install phase setup mpiInstTestPhase.session = mttSession mpiInstTestPhase.buildPhase = buildTestPhase mpiInstTestPhase.configure_args = “CFLAGS=-g –with-openib” mpiInstTestPhase.mpi_version = 1.3 # Test run phase setup runPhase.session = mttSession runPhase.installPhase = mpiInstTestPhase runPhase.test_name = “MPI_SSend_ator_f” runPhase.command = “/path/to/mpirun ….” runPhase.exit_value = 0 Object Model - example

  8. Select * from TestSession allSessionsObjects = models.TestSession.all() allSessionObjects = db.GqlQuery(“select * from TestSession where org == :1”, “voltaire”); for mttSession in mttSessionObjects … Using GQL language over Object Model q = db.GqlQuery("SELECT * FROM TestSession " +                 "WHERE start_date = :1 AND end_date < :2 " +                "ORDER BY org DESC",                “01-01-2009", “01-02-2009")# The query is not executed until results are accessed.results = q.fetch(5)for p in results: … When a model has a ReferenceProperty to another model, each referenced entity gets a property whose value is a Query that returns all of the entities of the first model that refer to it (.modelname.set is a special property representing all back-references of specified type) # To fetch and iterate over every BuildPhase entity that refers to the TestPhase # instance mttSession for buildPhase in mttSession.BuildPhase_set:  # ... MTToGDS – query examples

  9. Add code to generate XML from test reports (same way we generate HTML tables) Add perl wrapper to call GDS python script (mtt-submit-to-gds.py) to submit results in GDS Introduce GUID to interconnect various mtt reports phases MTT client changes

  10. <mtt_session start_date=“” id=xxx> <mtt_phase type=“MPIInstallphase” id=“1” buildPhaseID=“8”> <attr name=“org” value=“voltaire”/> … </mtt_phase> <mtt_phase type=“TestRunPhase” id=“2” installPhaseID=“4”> <att name=“command” value=“/path/to/mpirun ….”/> … </mtt_phase> … </mtt_session> MTT XML output example

  11. Read/write permissions to access GDS Gmail login is required to access GDS We need master ompi Gmail account Mtt will contain Google's SDK to provide GDS API. Mtt will depend on python version and libs. Do we need Object model versioning mechanism? Maybe more? Open Issues

  12. Lets eat!

More Related