/tests/quick/se/04.gpu/test.py

https://gitlab.com/pranith/gem5
Python | 48 lines | 12 code | 2 blank | 34 comment | 2 complexity | f1571d07991e892a867fdc358322ab4c MD5 | raw file
  1. #
  2. # Copyright (c) 2015 Advanced Micro Devices, Inc.
  3. # All rights reserved.
  4. #
  5. # For use for simulation and test purposes only
  6. #
  7. # Redistribution and use in source and binary forms, with or without
  8. # modification, are permitted provided that the following conditions are met:
  9. #
  10. # 1. Redistributions of source code must retain the above copyright notice,
  11. # this list of conditions and the following disclaimer.
  12. #
  13. # 2. Redistributions in binary form must reproduce the above copyright notice,
  14. # this list of conditions and the following disclaimer in the documentation
  15. # and/or other materials provided with the distribution.
  16. #
  17. # 3. Neither the name of the copyright holder nor the names of its contributors
  18. # may be used to endorse or promote products derived from this software
  19. # without specific prior written permission.
  20. #
  21. # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
  22. # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  23. # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  24. # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
  25. # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  26. # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  27. # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  28. # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  29. # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  30. # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  31. # POSSIBILITY OF SUCH DAMAGE.
  32. #
  33. # Author: Brad Beckmann
  34. #
  35. executable = binpath('gpu-hello')
  36. kernel_path = os.path.dirname(executable)
  37. kernel_files = glob.glob(os.path.join(kernel_path, '*.asm'))
  38. if kernel_files:
  39. print "Using GPU kernel code file(s)", ",".join(kernel_files)
  40. else:
  41. fatal("Can't locate kernel code (.asm) in " + kernel_path)
  42. driver = ClDriver(filename="hsa", codefile=kernel_files)
  43. root.system.cpu[2].cl_driver = driver
  44. root.system.cpu[0].workload = LiveProcess(cmd = 'gpu-hello',
  45. executable = binpath('gpu-hello'),
  46. drivers = [driver])