gnuradio / gnuradio-buildbot

Configuration for the GNU Radio CI system powered by Buildbot
https://ci.gnuradio.org/buildbot
Other
13 stars 12 forks source link

Add a timeout to ctest #17

Closed marcusmueller closed 6 years ago

marcusmueller commented 6 years ago

deadlocking unit tests currently lead to a lockup of the test for a long time. This should limit each VOLK test to 10 s, and each GR test to 30 s, which hopefully is long enough (we should probably avoid unit tests that take longer, anyways!).

noc0lour commented 6 years ago

Let's see if that works out well.

argilo commented 6 years ago

It seems 30 seconds is too short for the GNU Radio tests. A lot of CI failures are occurring because qa_constellation times out. On my laptop it's the second slowest test (about 12 seconds, most of which is spent generating lookup tables with 2^16 elements).

I found slow tests with the following command:

ctest | grep sec | sed 's/\(.*\)\( ..... sec\)/\2  \1/' | sort -n

The worst offenders:

  1.07 sec  333/361 Test #333: qa_packet_format ...................................   Passed  
  1.12 sec  319/361 Test #319: qa_glfsr_source ....................................   Passed  
  1.15 sec  270/361 Test #270: qa_pfb_channelizer .................................   Passed  
  1.18 sec  241/361 Test #241: qa_fecapi_repetition ...............................   Passed  
  1.28 sec  142/361 Test #142: pmt_prims ..........................................   Passed  
  1.33 sec  204/361 Test #204: qa_python_message_passing ..........................   Passed  
  1.34 sec  236/361 Test #236: qa_depuncture ......................................   Passed  
  1.62 sec  306/361 Test #306: qa_constellation_soft_decoder_cf ...................   Passed  
  1.70 sec  271/361 Test #271: qa_pfb_decimator ...................................   Passed  
  1.79 sec  305/361 Test #305: qa_constellation_receiver ..........................   Passed  
  2.28 sec  240/361 Test #240: qa_fecapi_ldpc .....................................   Passed  
  2.28 sec  247/361 Test #247: qa_puncture ........................................   Passed  
  2.35 sec  187/361 Test #187: qa_message .........................................   Passed  
  3.38 sec  257/361 Test #257: qa_fft_filter ......................................   Passed  
  3.45 sec  179/361 Test #179: qa_hier_block2 .....................................   Passed  
  4.35 sec  227/361 Test #227: qa_udp_source_sink .................................   Passed  
  4.38 sec  211/361 Test #211: qa_socket_pdu ......................................   Passed  
  4.44 sec  146/361 Test #146: qa_hier_block2 .....................................   Passed  
  4.86 sec  131/361 Test #131: runtime_qa_buffer.cc ...............................   Passed  
  6.34 sec  321/361 Test #321: qa_header_payload_demux ............................   Passed  
  8.51 sec  335/361 Test #335: qa_packet_headerparser_b ...........................   Passed  
 11.46 sec  303/361 Test #303: qa_constellation ...................................   Passed  
 12.76 sec  281/361 Test #281: qa_fastnoise .......................................   Passed