OpenMathLib / OpenMathLib/OpenBLAS

ThreadSanitizer detects warnings in cblas_dgemm

Open
#3,787 9 comments 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C
Stars
7.6k
Forks
1.7k
Avg merge
1d 3h
Merged PRs (30d)
42

Description

#include <cblas.h>
#include <stdio.h>

int main()
{
  int i=0;
  double A[6] = {1.0,2.0,1.0,-3.0,4.0,-1.0};
  double B[6] = {1.0,2.0,1.0,-3.0,4.0,-1.0};
  double C[9] = {.5,.5,.5,.5,.5,.5,.5,.5,.5};
  cblas_dgemm(CblasColMajor, CblasNoTrans, CblasTrans,3,3,2,1,A, 3, B, 3,2,C,3);

  for(i=0; i<9; i++)
    printf("%lf ", C[i]);
  printf("\n");
}

results in

Output of running example compiler with tsan
==================
WARNING: ThreadSanitizer: data race (pid=13857)
  Write of size 4 at 0x55ad043e2048 by thread T6:
    #0 alloc_mmap /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/memory.c:2301 (test_package+0xe08e)
    #1 blas_memory_alloc /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/memory.c:2925 (test_package+0xe807)
    #2 blas_thread_server /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:382 (test_package+0xf27a)

  Previous read of size 4 at 0x55ad043e2048 by thread T9:
    #0 alloc_mmap /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/memory.c:2225 (test_package+0xdeb0)
    #1 blas_memory_alloc /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/memory.c:2925 (test_package+0xe807)
    #2 blas_thread_server /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:382 (test_package+0xf27a)

  Location is global 'hot_alloc' of size 4 at 0x55ad043e2048 (test_package+0x000000024048)

  Thread T6 (tid=13864, running) created by main thread at:
    #0 pthread_create ../../../../src/libsanitizer/tsan/tsan_interceptors_posix.cpp:969 (libtsan.so.0+0x605b8)
    #1 blas_thread_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:667 (test_package+0xf771)
    #2 blas_thread_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:628 (test_package+0xf771)
    #3 gotoblas_memory_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/memory.c:3314 (test_package+0x3e62)
    #4 gotoblas_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/memory.c:3357 (test_package+0x3e62)
    #5 __libc_start_main <null> (libc.so.6+0x29eba)

  Thread T9 (tid=13867, running) created by main thread at:
    #0 pthread_create ../../../../src/libsanitizer/tsan/tsan_interceptors_posix.cpp:969 (libtsan.so.0+0x605b8)
    #1 blas_thread_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:667 (test_package+0xf771)
    #2 blas_thread_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:628 (test_package+0xf771)
    #3 gotoblas_memory_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/memory.c:3314 (test_package+0x3e62)
    #4 gotoblas_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/memory.c:3357 (test_package+0x3e62)
    #5 __libc_start_main <null> (libc.so.6+0x29eba)

SUMMARY: ThreadSanitizer: data race /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/memory.c:2301 in alloc_mmap
==================
==================
WARNING: ThreadSanitizer: data race (pid=13857)
  Read of size 8 at 0x7ffc55e63140 by thread T6:
    #0 blas_thread_server /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:444 (test_package+0xf34a)

  Previous write of size 8 at 0x7ffc55e63140 by main thread:
    [failed to restore the stack]

  Location is stack of main thread.

  Location is global '<null>' at 0x000000000000 ([stack]+0x00000001e140)

  Thread T6 (tid=13864, running) created by main thread at:
    #0 pthread_create ../../../../src/libsanitizer/tsan/tsan_interceptors_posix.cpp:969 (libtsan.so.0+0x605b8)
    #1 blas_thread_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:667 (test_package+0xf771)
    #2 blas_thread_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:628 (test_package+0xf771)
    #3 gotoblas_memory_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/memory.c:3314 (test_package+0x3e62)
    #4 gotoblas_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/memory.c:3357 (test_package+0x3e62)
    #5 __libc_start_main <null> (libc.so.6+0x29eba)

SUMMARY: ThreadSanitizer: data race /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:444 in blas_thread_server
==================
==================
WARNING: ThreadSanitizer: data race (pid=13857)
  Read of size 8 at 0x7ffc55e63170 by thread T6:
    #0 blas_thread_server /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:448 (test_package+0xf369)

  Previous write of size 8 at 0x7ffc55e63170 by main thread:
    [failed to restore the stack]

  Location is stack of main thread.

  Location is global '<null>' at 0x000000000000 ([stack]+0x00000001e170)

  Thread T6 (tid=13864, running) created by main thread at:
    #0 pthread_create ../../../../src/libsanitizer/tsan/tsan_interceptors_posix.cpp:969 (libtsan.so.0+0x605b8)
    #1 blas_thread_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:667 (test_package+0xf771)
    #2 blas_thread_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:628 (test_package+0xf771)
    #3 gotoblas_memory_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/memory.c:3314 (test_package+0x3e62)
    #4 gotoblas_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/memory.c:3357 (test_package+0x3e62)
    #5 __libc_start_main <null> (libc.so.6+0x29eba)

SUMMARY: ThreadSanitizer: data race /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:448 in blas_thread_server
==================
==================
WARNING: ThreadSanitizer: data race (pid=13857)
  Read of size 8 at 0x7ffc55e63178 by thread T6:
    #0 blas_thread_server /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:449 (test_package+0xf37d)

  Previous write of size 8 at 0x7ffc55e63178 by main thread:
    [failed to restore the stack]

  Location is stack of main thread.

  Location is global '<null>' at 0x000000000000 ([stack]+0x00000001e178)

  Thread T6 (tid=13864, running) created by main thread at:
    #0 pthread_create ../../../../src/libsanitizer/tsan/tsan_interceptors_posix.cpp:969 (libtsan.so.0+0x605b8)
    #1 blas_thread_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:667 (test_package+0xf771)
    #2 blas_thread_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:628 (test_package+0xf771)
    #3 gotoblas_memory_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/memory.c:3314 (test_package+0x3e62)
    #4 gotoblas_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/memory.c:3357 (test_package+0x3e62)
    #5 __libc_start_main <null> (libc.so.6+0x29eba)

SUMMARY: ThreadSanitizer: data race /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:449 in blas_thread_server
==================
==================
WARNING: ThreadSanitizer: data race (pid=13857)
  Read of size 4 at 0x7ffc55e631e0 by thread T6:
    #0 blas_thread_server /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:470 (test_package+0xf395)

  Previous write of size 4 at 0x7ffc55e631e0 by main thread:
    [failed to restore the stack]

  Location is stack of main thread.

  Location is global '<null>' at 0x000000000000 ([stack]+0x00000001e1e0)

  Thread T6 (tid=13864, running) created by main thread at:
    #0 pthread_create ../../../../src/libsanitizer/tsan/tsan_interceptors_posix.cpp:969 (libtsan.so.0+0x605b8)
    #1 blas_thread_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:667 (test_package+0xf771)
    #2 blas_thread_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:628 (test_package+0xf771)
    #3 gotoblas_memory_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/memory.c:3314 (test_package+0x3e62)
    #4 gotoblas_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/memory.c:3357 (test_package+0x3e62)
    #5 __libc_start_main <null> (libc.so.6+0x29eba)

SUMMARY: ThreadSanitizer: data race /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:470 in blas_thread_server
==================
==================
WARNING: ThreadSanitizer: data race (pid=13857)
  Read of size 8 at 0x7ffc55e63158 by thread T6:
    #0 blas_thread_server /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:519 (test_package+0xf3b4)

  Previous write of size 8 at 0x7ffc55e63158 by main thread:
    [failed to restore the stack]

  Location is stack of main thread.

  Location is global '<null>' at 0x000000000000 ([stack]+0x00000001e158)

  Thread T6 (tid=13864, running) created by main thread at:
    #0 pthread_create ../../../../src/libsanitizer/tsan/tsan_interceptors_posix.cpp:969 (libtsan.so.0+0x605b8)
    #1 blas_thread_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:667 (test_package+0xf771)
    #2 blas_thread_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:628 (test_package+0xf771)
    #3 gotoblas_memory_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/memory.c:3314 (test_package+0x3e62)
    #4 gotoblas_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/memory.c:3357 (test_package+0x3e62)
    #5 __libc_start_main <null> (libc.so.6+0x29eba)

SUMMARY: ThreadSanitizer: data race /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:519 in blas_thread_server
==================
==================
WARNING: ThreadSanitizer: data race (pid=13857)
  Read of size 8 at 0x7ffc55e63148 by thread T6:
    #0 blas_thread_server /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:525 (test_package+0xf3e0)

  Previous write of size 8 at 0x7ffc55e63148 by main thread:
    [failed to restore the stack]

  Location is stack of main thread.

  Location is global '<null>' at 0x000000000000 ([stack]+0x00000001e148)

  Thread T6 (tid=13864, running) created by main thread at:
    #0 pthread_create ../../../../src/libsanitizer/tsan/tsan_interceptors_posix.cpp:969 (libtsan.so.0+0x605b8)
    #1 blas_thread_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:667 (test_package+0xf771)
    #2 blas_thread_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:628 (test_package+0xf771)
    #3 gotoblas_memory_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/memory.c:3314 (test_package+0x3e62)
    #4 gotoblas_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/memory.c:3357 (test_package+0x3e62)
    #5 __libc_start_main <null> (libc.so.6+0x29eba)

SUMMARY: ThreadSanitizer: data race /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:525 in blas_thread_server
==================
==================
WARNING: ThreadSanitizer: data race (pid=13857)
  Write of size 8 at 0x7ffc55e634a8 by main thread:
    #0 main /root/conan-center-index/recipes/openblas/all/test_package/test_package.cpp:9 (test_package+0x3a15)

  Previous read of size 8 at 0x7ffc55e634a8 by thread T11:
    [failed to restore the stack]

  Location is stack of main thread.

  Location is global '<null>' at 0x000000000000 ([stack]+0x00000001e4a8)

  Thread T11 (tid=13869, running) created by main thread at:
    #0 pthread_create ../../../../src/libsanitizer/tsan/tsan_interceptors_posix.cpp:969 (libtsan.so.0+0x605b8)
    #1 blas_thread_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:667 (test_package+0xf771)
    #2 blas_thread_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:628 (test_package+0xf771)
    #3 gotoblas_memory_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/memory.c:3314 (test_package+0x3e62)
    #4 gotoblas_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/memory.c:3357 (test_package+0x3e62)
    #5 __libc_start_main <null> (libc.so.6+0x29eba)

SUMMARY: ThreadSanitizer: data race /root/conan-center-index/recipes/openblas/all/test_package/test_package.cpp:9 in main
==================
==================
WARNING: ThreadSanitizer: data race (pid=13857)
  Write of size 8 at 0x7ffc55e634b0 by main thread:
    #0 main /root/conan-center-index/recipes/openblas/all/test_package/test_package.cpp:9 (test_package+0x3a29)

  Previous read of size 8 at 0x7ffc55e634b0 by thread T11:
    [failed to restore the stack]

  Location is stack of main thread.

  Location is global '<null>' at 0x000000000000 ([stack]+0x00000001e4b0)

  Thread T11 (tid=13869, running) created by main thread at:
    #0 pthread_create ../../../../src/libsanitizer/tsan/tsan_interceptors_posix.cpp:969 (libtsan.so.0+0x605b8)
    #1 blas_thread_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:667 (test_package+0xf771)
    #2 blas_thread_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:628 (test_package+0xf771)
    #3 gotoblas_memory_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/memory.c:3314 (test_package+0x3e62)
    #4 gotoblas_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/memory.c:3357 (test_package+0x3e62)
    #5 __libc_start_main <null> (libc.so.6+0x29eba)

SUMMARY: ThreadSanitizer: data race /root/conan-center-index/recipes/openblas/all/test_package/test_package.cpp:9 in main
==================
==================
WARNING: ThreadSanitizer: data race (pid=13857)
  Write of size 8 at 0x7ffc55e63360 by main thread:
    #0 cblas_dgemm /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/interface/gemm.c:341 (test_package+0x4149)
    #1 main /root/conan-center-index/recipes/openblas/all/test_package/test_package.cpp:10 (test_package+0x3acc)

  Previous read of size 8 at 0x7ffc55e63360 by thread T9:
    [failed to restore the stack]

  Location is stack of main thread.

  Location is global '<null>' at 0x000000000000 ([stack]+0x00000001e360)

  Thread T9 (tid=13867, running) created by main thread at:
    #0 pthread_create ../../../../src/libsanitizer/tsan/tsan_interceptors_posix.cpp:969 (libtsan.so.0+0x605b8)
    #1 blas_thread_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:667 (test_package+0xf771)
    #2 blas_thread_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/blas_server.c:628 (test_package+0xf771)
    #3 gotoblas_memory_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/memory.c:3314 (test_package+0x3e62)
    #4 gotoblas_init /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/driver/others/memory.c:3357 (test_package+0x3e62)
    #5 __libc_start_main <null> (libc.so.6+0x29eba)

SUMMARY: ThreadSanitizer: data race /root/.conan/data/openblas/0.3.20/aborzunov/testing/build/af70c39ddad7b91ea16b95b5cceba7ed41791f1e/source_subfolder/interface/gemm.c:341 in cblas_dgemm
==================
11.000000 -9.000000 5.000000 -9.000000 21.000000 -1.000000 5.000000 -1.000000 3.000000
ThreadSanitizer: reported 10 warnings
ERROR: openblas/0.3.20@aborzunov/testing (test package): Error in test() method, line 17
        self.run(bin_path, run_environment=True)
        ConanException: Error 66 while executing bin/test_package

Steps to reproduce with docker:

(dockerfile and accompanying files)
❯ cat Dockerfile
FROM ubuntu:22.04
RUN apt-get update; \
apt-get install -y software-properties-common apt-utils; \
add-apt-repository -y universe; \
add-apt-repository -y ppa:ubuntu-toolchain-r/ppa; \
apt-get update; \
apt-get -y install python3-pip gcc-11 g++-11 cmake build-essential git; \
pip3 install conan; \
cd; \
mkdir -p .conan/profiles;

COPY default /root/.conan/profiles
COPY tsan /root/.conan/profiles
COPY settings.yml /root/.conan/
❯ cat default
[settings]
os=Linux
os_build=Linux
arch=x86_64
arch_build=x86_64
compiler=gcc
compiler.version=11.3
compiler.libcxx=libstdc++11
compiler.cppstd=20
build_type=Release
[options]
[conf]
[build_requires]
[env]
CC=gcc-11
CXX=g++-11
CUDAHOSTCXX=g++-11

❯ cat tsan
[settings]
build_type=RelWithDebInfo
compiler.sanitizer=Thread
[env]
CFLAGS=-fno-omit-frame-pointer -fsanitize=thread
CXXFLAGS=-fno-omit-frame-pointer -fsanitize=thread
LDFLAGS=-fsanitize=thread
docker build -t ubuntu-22.04-gcc-11-conan ./
docker run -it --rm --name gcc11 ubuntu-22.04-gcc-11-conan /bin/bash
cd
git clone https://github.com/conan-io/conan-center-index
cd conan-center-index/recipes/openblas
conan create all openblas/0.3.20@aborzunov/testing --profile=default --profile=tsan

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the provided cblas_dgemm reproducer and run it under ThreadSanitizer. Inspect driver/others/memory.c, especially alloc_mmap, and driver/others/blas_server.c around blas_thread_server and thread initialization. Done means identifying and addressing the reported races without changing the example's expected BLAS behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
c, cpp
Domain
backend, testing
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.