Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

ThreadSanitizer detects warnings in cblas_dgemm

オープン
#3,787 コメント 9 件 リアクション 2 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

まだ誰も着手していません。

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
35/100
issue の種類
バグ
明瞭さ
おおむね明確
活発さ
停滞
技術スタック
c, cpp
領域
backend, testing

調査の方向性

提供されている cblas_dgemm 再現プログラムから始め、ThreadSanitizer で実行します。driver/others/memory.c、特に alloc_mmap と、blas_thread_server およびスレッド初期化の周辺にある driver/others/blas_server.c を調査します。例で期待される BLAS の動作を変更せずに、報告されたデータ競合を特定して対処できれば完了です。

索引モデルが issue の本文から書いたものです。

説明

#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
主要言語
C
スター
7.6k
フォーク
1.7k
平均マージ
1日 8時間
マージ済み PR(30日)
48

環境構築

このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

OpenMathLib/OpenBLAS のほかの issue

OpenMathLib/OpenBLAS の issue をすべて見る

似ている issue

C の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。