Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

support running tests in parallel #111

Open
derekbruening opened this issue Nov 27, 2014 · 3 comments
Open

support running tests in parallel #111

derekbruening opened this issue Nov 27, 2014 · 3 comments

Comments

@derekbruening
Copy link
Contributor

From derek.br...@gmail.com on April 08, 2009 11:07:09

The latest CTest (will become 2.6.4) support running tests in parallel.
As part of getting the Windows runall tests working we should tweak them to
support parallel execution, which they do not today due to two factors:

  • they all run the same apps (calc.exe, notepad.exe) and thus can trip over
    each other's registry settings
  • they use closewnd.c which closes an app with a certain name in its
    title, which will close all instances of the app

My proposed solution is:

  • make a copy of calc.exe or notepad.exe and name it with the test name
  • have closewnd.c find the window and do a clean shutdown (as opposed
    to drkill) using the pid instead of the name. this can be done by
    using EnumWindows() to enumerate top-level windows and then using
    GetWindowThreadProcessId() to find the one owned by the target pid.

Original issue: http://code.google.com/p/dynamorio/issues/detail?id=111

@derekbruening
Copy link
Contributor Author

From derek.br...@gmail.com on April 12, 2009 20:12:46

This case covers determining whether the CTest being used supports parallel tests and
passing the appropriate flag, as well as fixing the runall tests to be parallel. The
latter may be done in conjunction with just getting them working with CTest ( issue #120 )

@derekbruening
Copy link
Contributor Author

From derek.br...@gmail.com on August 09, 2009 13:25:07

to speed up windows should also use the bug 8726 fix -DCMAKE_RULE_MESSAGES=OFF

@derekbruening
Copy link
Contributor Author

From derek.br...@gmail.com on February 27, 2010 07:51:33

in r276 : issue #111 :

  • -j support for CMake 2.8+:

    • had to change client-interface/*.c to use dr_fprintf(STDERR to match
      print() which prints to stderr
    • changed all the signal tests to use print(), which forced changes in
      all the signal expect files
    • added -j5 to runsuite.cmake, blindly, since cmake 2.6 ignores
      unknown params

    results for running ctest in build dir:

    • windows vm ~/opensource/build_withwiki: 3:12 seq, 1:25 -j5
    • glaurung: 17s seq, 7s -j5
  • set CMAKE_RULE_MESSAGES:BOOL=OFF in runsuite.cmake to speed up Windows build
    (only effective for CMake 2.8+)

    can use in own builds manually, like so:
    CC=cl CXX=cl ~/install/cmake/cmake-2.8.0-rc2-win32-x86/bin/cmake -G"Unix Makefiles"
    -DDEBUG=ON -DINTERNAL=ON -DBUILD_TESTS=ON -DCMAKE_RULE_MESSAGES:BOOL=OFF
    -DCMAKE_INSTALL_PREFIX=../exports ../withwiki/trunk/

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant