I also noticed this test always timing out on a simulator.
Reduce iteration count for
23_containers/unordered_set/hash_policy/load_factor.cc for !run_expensive_tests
2024-07-19 Joern Rennecke <joern.renne...@riscy-ip.com>
libstdc++-v3/
* testsuite/23_containers/unordered_set/hash_policy/load_factor.cc:
[!run_expensive_tests]: Reduce iteration count.
Index: 23_containers/unordered_set/hash_policy/load_factor.cc
===================================================================
--- 23_containers/unordered_set/hash_policy/load_factor.cc (revision 6631)
+++ 23_containers/unordered_set/hash_policy/load_factor.cc (revision 6632)
@@ -20,13 +20,21 @@
#include <unordered_set>
#include <testsuite_hooks.h>
+// memory requirements are about 32 bytes per iteration for ilp32.
+// CPU requirements are about a minute for 20000 iterations on a simulator,
+// but 20 minutes for 100000 iterations.
+// { dg-additional-options "-Diterations=20000" { target { !
run_expensive_tests } } }
+#ifndef iterations
+#define iterations 100000
+#endif
+
template<typename _USet>
void test()
{
{
_USet us;
- for (int i = 0; i != 100000; ++i)
+ for (int i = 0; i != iterations; ++i)
{
us.insert(i);
VERIFY( us.load_factor() <= us.max_load_factor() );
@@ -35,7 +43,7 @@
{
_USet us;
us.max_load_factor(3.f);
- for (int i = 0; i != 100000; ++i)
+ for (int i = 0; i != iterations; ++i)
{
us.insert(i);
VERIFY( us.load_factor() <= us.max_load_factor() );
@@ -44,7 +52,7 @@
{
_USet us;
us.max_load_factor(.3f);
- for (int i = 0; i != 100000; ++i)
+ for (int i = 0; i != iterations; ++i)
{
us.insert(i);
VERIFY( us.load_factor() <= us.max_load_factor() );