starpu.suppr 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178
  1. # StarPU --- Runtime system for heterogeneous multicore architectures.
  2. #
  3. # Copyright (C) 2013-2016 Université de Bordeaux
  4. # Copyright (C) 2012 CNRS
  5. # Copyright (C) 2012, 2017 INRIA
  6. #
  7. # StarPU is free software; you can redistribute it and/or modify
  8. # it under the terms of the GNU Lesser General Public License as published by
  9. # the Free Software Foundation; either version 2.1 of the License, or (at
  10. # your option) any later version.
  11. #
  12. # StarPU is distributed in the hope that it will be useful, but
  13. # WITHOUT ANY WARRANTY; without even the implied warranty of
  14. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  15. #
  16. # See the GNU Lesser General Public License in COPYING.LGPL for more details.
  17. #
  18. {
  19. don't care about cache hit stats
  20. Helgrind:Race
  21. fun:_starpu_msi_cache_hit
  22. ...
  23. }
  24. {
  25. don't care about cache miss stats
  26. Helgrind:Race
  27. fun:_starpu_msi_cache_miss
  28. ...
  29. }
  30. {
  31. known race, but not problematic in practice, see comment in _starpu_tag_clear
  32. Helgrind:LockOrder
  33. ...
  34. fun:_starpu_tag_free
  35. fun:_starpu_htbl_clear_tags
  36. ...
  37. fun:_starpu_tag_clear
  38. fun:starpu_shutdown
  39. ...
  40. }
  41. {
  42. There is actually no race on current_mode, because the mode can not change unexpectedly, until _starpu_notify_data_dependencies() is called further down. Valgrind can not know about such software rwlock.
  43. Helgrind:Race
  44. fun:_starpu_release_data_on_node
  45. fun:_starpu_push_task_output
  46. ...
  47. }
  48. {
  49. We do not care about races on profiling statistics
  50. Helgrind:Race
  51. fun:_starpu_worker_get_status
  52. fun:_starpu_worker_reset_profiling_info_with_lock
  53. ...
  54. }
  55. {
  56. This is racy, but since we'll always put the same values, this is not a problem.
  57. Helgrind:Race
  58. fun:_starpu_codelet_check_deprecated_fields
  59. ...
  60. }
  61. {
  62. This is racy, but we don't care, it's only a statistic
  63. Helgrind:Race
  64. fun:starpu_task_nsubmitted
  65. ...
  66. }
  67. {
  68. This is racy, but we don't care, it's only a statistic
  69. Helgrind:Race
  70. fun:starpu_task_nready
  71. ...
  72. }
  73. {
  74. This is racy, but we don't care, it's only a statistic
  75. Helgrind:Race
  76. fun:_starpu_bus_update_profiling_info
  77. ...
  78. }
  79. {
  80. fscanf error
  81. Memcheck:Cond
  82. ...
  83. fun:fscanf
  84. fun:_starpu_load_bus_performance_files
  85. ...
  86. }
  87. {
  88. mc / handle locking order. We always take handle before mc, except when we tidy memory, where we use trylock, but helgrind doesn't handle that :/ https://bugs.kde.org/show_bug.cgi?id=243232
  89. Helgrind:LockOrder
  90. fun:mutex_trylock_WRK
  91. fun:__starpu_spin_trylock
  92. ...
  93. }
  94. {
  95. mc / handle locking order1
  96. Helgrind:LockOrder
  97. ...
  98. fun:__starpu_spin_lock
  99. fun:try_to_free_mem_chunk
  100. ...
  101. }
  102. {
  103. mc / handle locking order2
  104. Helgrind:LockOrder
  105. ...
  106. fun:__starpu_spin_lock
  107. fun:try_to_find_reusable_mem_chunk
  108. ...
  109. }
  110. {
  111. mc / handle locking order3
  112. Helgrind:LockOrder
  113. ...
  114. fun:__starpu_spin_lock
  115. fun:free_potentially_in_use_mc
  116. ...
  117. }
  118. {
  119. mc / handle locking order4
  120. Helgrind:LockOrder
  121. ...
  122. fun:__starpu_spin_lock
  123. fun:free_potentially_in_use_mc
  124. ...
  125. }
  126. {
  127. mc / handle locking order5
  128. Helgrind:LockOrder
  129. ...
  130. fun:__starpu_spin_lock
  131. fun:register_mem_chunk
  132. ...
  133. }
  134. {
  135. mc / handle locking order6
  136. Helgrind:LockOrder
  137. ...
  138. fun:__starpu_spin_lock
  139. fun:_starpu_request_mem_chunk_removal
  140. ...
  141. }
  142. {
  143. mc / handle locking order7
  144. Helgrind:LockOrder
  145. ...
  146. fun:__starpu_spin_lock
  147. fun:_starpu_allocate_interface
  148. ...
  149. }
  150. {
  151. mc / handle locking order8
  152. Helgrind:LockOrder
  153. ...
  154. fun:__starpu_spin_lock
  155. fun:_starpu_memchunk_recently_used
  156. ...
  157. }