TraceVizHandler.java 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. // StarPU --- Runtime system for heterogeneous multicore architectures.
  2. //
  3. // Copyright (C) 2021 Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
  4. //
  5. // StarPU is free software; you can redistribute it and/or modify
  6. // it under the terms of the GNU Lesser General Public License as published by
  7. // the Free Software Foundation; either version 2.1 of the License, or (at
  8. // your option) any later version.
  9. //
  10. // StarPU is distributed in the hope that it will be useful, but
  11. // WITHOUT ANY WARRANTY; without even the implied warranty of
  12. // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  13. //
  14. // See the GNU Lesser General Public License in COPYING.LGPL for more details.
  15. //
  16. package starpu.handlers;
  17. import java.awt.EventQueue;
  18. import java.io.File;
  19. import org.eclipse.core.commands.AbstractHandler;
  20. import org.eclipse.core.commands.ExecutionEvent;
  21. import org.eclipse.core.commands.ExecutionException;
  22. public class TraceVizHandler extends AbstractHandler {
  23. @Override
  24. public Object execute(ExecutionEvent event) throws ExecutionException {
  25. EventQueue.invokeLater(() -> {
  26. try {
  27. String workDir = System.getProperty("user.dir") + "/" + TraceUtils.getRandomDirectoryName();
  28. String inputfilename = workDir + "/paje.trace";
  29. File f = new File(inputfilename);
  30. if (!f.isFile())
  31. throw new Exception("File <" + inputfilename + "> does not exist. Have you run StarPU FxT tool?");
  32. String[] cmd1 = { "vite", inputfilename };
  33. starpu.handlers.TraceUtils.runCommand(cmd1);
  34. } catch (Exception e) {
  35. TraceUtils.displayMessage("Error: " + e.toString());
  36. e.printStackTrace();
  37. }
  38. });
  39. return null;
  40. }
  41. }