Uploaded image for project: 'Apache Arrow'
  1. Apache Arrow
  2. ARROW-8438

[C++] arrow-io-memory-benchmark crashes

    XMLWordPrintableJSON

Details

    Description

      "arrow-io-memory-benchmark" SIGSEGV in latest code base. It worked at least when my last commit 8 days ago: b1d4c86eb28267525c52f436c3a096e70b8ef6e0

      Tested on x86 host. Build with "cmake -GNinja -DCMAKE_BUILD_TYPE=Debug -DARROW_COMPUTE=ON -DARROW_BUILD_BENCHMARKS=ON .."

      stack backtrace attached

      (gdb) r
      Starting program: /home/cyb/share/debug/arrow-io-memory-benchmark
      [Thread debugging using libthread_db enabled]
      Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
      (gdb) [New Thread 0x7ffff37ff700 (LWP 29065)]
      2020-04-14 14:24:40
      Running /home/cyb/share/debug/arrow-io-memory-benchmark
      Run on (32 X 2100 MHz CPU s)
      CPU Caches:
      L1 Data 32K (x16)
      L1 Instruction 64K (x16)
      L2 Unified 512K (x16)
      L3 Unified 4096K (x16)
      Load Average: 2.64, 4.39, 4.28
      **WARNING** CPU scaling is enabled, the benchmark real time measurements may be noisy and will incur extra overhead.
      **WARNING** Library was built as DEBUG. Timings may be affected.

      Thread 1 "arrow-io-memory" received signal SIGSEGV, Segmentation fault.
      0x00007ffff68e67c8 in arrow::Buffer::is_mutable (this=0x0) at ../src/arrow/buffer.h:258
      258 ../src/arrow/buffer.h: No such file or directory.
      (gdb) bt
      #0 0x00007ffff68e67c8 in arrow::Buffer::is_mutable (this=0x0) at ../src/arrow/buffer.h:258
      #1 0x00007ffff6c3c41a in arrow::io::FixedSizeBufferWriter::FixedSizeBufferWriterImpl::FixedSizeBufferWriterImpl (this=0x5555558921f0, buffer=std::shared_ptr<arrow::Buffer> (empty) =

      {...})
      at ../src/arrow/io/memory.cc:164
      #2 0x00007ffff6c3a575 in arrow::io::FixedSizeBufferWriter::FixedSizeBufferWriter (this=0x7fffffffd660, buffer=std::shared_ptr<arrow::Buffer> (empty) = {...}

      , __in_chrg=<optimized out>,
      __vtt_parm=<optimized out>) at ../src/arrow/io/memory.cc:227
      #3 0x00005555555ebd00 in arrow::ParallelMemoryCopy (state=...) at ../src/arrow/io/memory_benchmark.cc:303
      #4 0x00005555555f80d4 in benchmark::internal::FunctionBenchmark::Run (this=0x555555891290, st=...)
      at /home/cyb/arrow/cpp/debug/gbenchmark_ep-prefix/src/gbenchmark_ep/src/benchmark_register.cc:496
      #5 0x000055555564bcc7 in benchmark::internal::BenchmarkInstance::Run (this=0x5555558939c0, iters=10, thread_id=0, timer=0x7fffffffd7a0, manager=0x555555894b70)
      at /home/cyb/arrow/cpp/debug/gbenchmark_ep-prefix/src/gbenchmark_ep/src/benchmark_api_internal.cc:10
      #6 0x000055555562c0c8 in benchmark::internal::(anonymous namespace)::RunInThread (b=0x5555558939c0, iters=10, thread_id=0, manager=0x555555894b70)
      at /home/cyb/arrow/cpp/debug/gbenchmark_ep-prefix/src/gbenchmark_ep/src/benchmark_runner.cc:119
      #7 0x000055555562c95a in benchmark::internal::(anonymous namespace)::BenchmarkRunner::DoNIterations (this=0x7fffffffddc0)
      at /home/cyb/arrow/cpp/debug/gbenchmark_ep-prefix/src/gbenchmark_ep/src/benchmark_runner.cc:214
      #8 0x000055555562d0ac in benchmark::internal::(anonymous namespace)::BenchmarkRunner::DoOneRepetition (this=0x7fffffffddc0, repetition_index=0)
      at /home/cyb/arrow/cpp/debug/gbenchmark_ep-prefix/src/gbenchmark_ep/src/benchmark_runner.cc:299
      #9 0x000055555562c558 in benchmark::internal::(anonymous namespace)::BenchmarkRunner::BenchmarkRunner (this=0x7fffffffddc0, b_=..., complexity_reports_=0x7fffffffdef0)
      at /home/cyb/arrow/cpp/debug/gbenchmark_ep-prefix/src/gbenchmark_ep/src/benchmark_runner.cc:161
      #10 0x000055555562d47f in benchmark::internal::RunBenchmark (b=..., complexity_reports=0x7fffffffdef0)
      at /home/cyb/arrow/cpp/debug/gbenchmark_ep-prefix/src/gbenchmark_ep/src/benchmark_runner.cc:355
      #11 0x00005555555f0ae6 in benchmark::internal::(anonymous namespace)::RunBenchmarks (benchmarks=std::vector of length 9, capacity 12 =

      {...}

      , display_reporter=0x555555891510, file_reporter=0x0)
      at /home/cyb/arrow/cpp/debug/gbenchmark_ep-prefix/src/gbenchmark_ep/src/benchmark.cc:265
      #12 0x00005555555f13b6 in benchmark::RunSpecifiedBenchmarks (display_reporter=0x555555891510, file_reporter=0x0)
      at /home/cyb/arrow/cpp/debug/gbenchmark_ep-prefix/src/gbenchmark_ep/src/benchmark.cc:399
      #13 0x00005555555f0ef8 in benchmark::RunSpecifiedBenchmarks () at /home/cyb/arrow/cpp/debug/gbenchmark_ep-prefix/src/gbenchmark_ep/src/benchmark.cc:340
      #14 0x00005555555efc64 in main (argc=1, argv=0x7fffffffe398) at /home/cyb/arrow/cpp/debug/gbenchmark_ep-prefix/src/gbenchmark_ep/src/benchmark_main.cc:17

      Attachments

        Issue Links

          Activity

            People

              apitrou Antoine Pitrou
              yibocai Yibo Cai
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 40m
                  40m