summaryrefslogtreecommitdiff
path: root/performance-tests
diff options
context:
space:
mode:
authornanbor <nanbor@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1999-01-04 07:54:08 +0000
committernanbor <nanbor@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1999-01-04 07:54:08 +0000
commit8d38caf06ef460a251dcf95e5d43b666de64d160 (patch)
treea9cf89f47383586d7a4774ada1f5ba0353d6bbb2 /performance-tests
parent05bac59b2545c08c4402438eed093da7e6beb4d5 (diff)
downloadATCD-8d38caf06ef460a251dcf95e5d43b666de64d160.tar.gz
*** empty log message ***
Diffstat (limited to 'performance-tests')
-rw-r--r--performance-tests/Synch-Benchmarks/Base_Test/Baseline_Test.cpp5
-rw-r--r--performance-tests/Synch-Benchmarks/Base_Test/Baseline_Test.h19
-rw-r--r--performance-tests/Synch-Benchmarks/Perf_Test/Benchmark_Performance.h2
-rw-r--r--performance-tests/Synch-Benchmarks/Perf_Test/sysvsema_test.cpp31
-rw-r--r--performance-tests/Synch-Benchmarks/svc.conf5
5 files changed, 50 insertions, 12 deletions
diff --git a/performance-tests/Synch-Benchmarks/Base_Test/Baseline_Test.cpp b/performance-tests/Synch-Benchmarks/Base_Test/Baseline_Test.cpp
index 7961804264f..2bbe7681b5a 100644
--- a/performance-tests/Synch-Benchmarks/Base_Test/Baseline_Test.cpp
+++ b/performance-tests/Synch-Benchmarks/Base_Test/Baseline_Test.cpp
@@ -10,6 +10,11 @@
ACE_RCSID(Synch_Benchmarks, Baseline_Test, "$Id$")
+Benchmark_Baseline_Test_Base::Benchmark_Baseline_Test_Base (void)
+ : Benchmark_Base (Benchmark_Base::BASELINE)
+{
+}
+
Baseline_Test::Baseline_Test (void)
: n_lwps_ (0),
orig_n_lwps_ (0)
diff --git a/performance-tests/Synch-Benchmarks/Base_Test/Baseline_Test.h b/performance-tests/Synch-Benchmarks/Base_Test/Baseline_Test.h
index 8a4d57a6cbc..86e57024e2c 100644
--- a/performance-tests/Synch-Benchmarks/Base_Test/Baseline_Test.h
+++ b/performance-tests/Synch-Benchmarks/Base_Test/Baseline_Test.h
@@ -6,18 +6,29 @@
#include "Benchmark_Base.h"
-class ACE_Svc_Export Baseline_Test : public Benchmark_Method_Base
+class ACE_Svc_Export Benchmark_Baseline_Test_Base : public Benchmark_Base
{
+ // = TITLE
+ // This class identifies itself as Benmarking Performance Test class.
public:
- Baseline_Test (void);
+ virtual int acquire () = 0;
+ virtual int release () = 0;
+ //
+
+protected:
+ Benchmark_Baseline_Test_Base (void);
+};
+
+class ACE_Svc_Export Benchmark_Baseline : public Benchmark_Method_Base
+{
+public:
+ Benchmark_Baseline (void);
int init (int argc, char **argv);
virtual int pre_run_test (Benchmark_Base *bp);
virtual int run_test (void);
virtual int post_run_test (void);
virtual int valid_test_object (Benchmark_Base *);
private:
- int n_lwps_;
- int orig_n_lwps_;
};
ACE_SVC_FACTORY_DECLARE (Baseline_Test)
diff --git a/performance-tests/Synch-Benchmarks/Perf_Test/Benchmark_Performance.h b/performance-tests/Synch-Benchmarks/Perf_Test/Benchmark_Performance.h
index 116b8a90dbc..d7ad7821f3b 100644
--- a/performance-tests/Synch-Benchmarks/Perf_Test/Benchmark_Performance.h
+++ b/performance-tests/Synch-Benchmarks/Perf_Test/Benchmark_Performance.h
@@ -13,7 +13,7 @@
extern int buffer;
extern ACE_Svc_Export int synch_count;
-class SYNCHLIB_Export Benchmark_Performance_Test_Base : public Benchmark_Base
+class ACE_Svc_Export Benchmark_Performance_Test_Base : public Benchmark_Base
{
// = TITLE
// This class identifies itself as Benmarking Performance Test class.
diff --git a/performance-tests/Synch-Benchmarks/Perf_Test/sysvsema_test.cpp b/performance-tests/Synch-Benchmarks/Perf_Test/sysvsema_test.cpp
index f0f7b568bcf..1da04d95e4e 100644
--- a/performance-tests/Synch-Benchmarks/Perf_Test/sysvsema_test.cpp
+++ b/performance-tests/Synch-Benchmarks/Perf_Test/sysvsema_test.cpp
@@ -12,13 +12,34 @@ ACE_RCSID(Synch_Benchmarks, sysvsema_test, "$Id$")
class ACE_Svc_Export SYSVSema_Test : public Benchmark_Performance
{
public:
+ virtual int init (int, char *[]);
+ virtual int fini (void);
virtual int svc (void);
private:
- static ACE_SV_Semaphore_Simple sema;
+ static ACE_SV_Semaphore_Simple *sema;
};
-ACE_SV_Semaphore_Simple SYSVSema_Test::sema ((key_t) 1234);
+
+ACE_SV_Semaphore_Simple *SYSVSema_Test::sema = 0;
+
+int
+SYSVSema_Test::init (int, char *[])
+{
+#if defined (ACE_HAS_SYSV_IPC)
+ ACE_NEW_RETURN (SYSVSema_Test::sema, ACE_SV_Semaphore_Simple ((key_t) 1234), -1);
+ return 0;
+#else
+ ACE_ERROR_RETURN ((LM_ERROR, "SysV Semaphore not supported on this platform.\n"), -1);
+#endif /* ACE_HAS_SYSV_IPC */
+}
+
+int
+SYSVSema_Test::fini (void)
+{
+ delete SYSVSema_Test::sema;
+ return 0;
+}
int
SYSVSema_Test::svc (void)
@@ -28,13 +49,13 @@ SYSVSema_Test::svc (void)
while (!this->done ())
{
- sema.acquire ();
+ SYSVSema_Test::sema->acquire ();
performance_test_options.thr_work_count[ni]++;
buffer++;
- sema.release ();
+ SYSVSema_Test::sema->release ();
}
- sema.remove ();
+ SYSVSema_Test::sema->remove ();
/* NOTREACHED */
return 0;
}
diff --git a/performance-tests/Synch-Benchmarks/svc.conf b/performance-tests/Synch-Benchmarks/svc.conf
index 144763e0f29..33677395aba 100644
--- a/performance-tests/Synch-Benchmarks/svc.conf
+++ b/performance-tests/Synch-Benchmarks/svc.conf
@@ -1,7 +1,8 @@
# Dynamically configure all the tests
-dynamic Performance_Test Service_Object * Perf_Test/Perf_Test:_make_Performance_Test() "-v -s 3"
+dynamic Performance_Test Service_Object * Perf_Test/Perf_Test:_make_Performance_Test() "-s 3"
+dynamic SYSVSema_Test Service_Object * Perf_Test/Perf_Test:_make_SYSVSema_Test()
dynamic Mutex_Test Service_Object * Perf_Test/Perf_Test:_make_Mutex_Test()
-dynamic Adaptive_Mutex_Test Service_Object * Perf_Test/Perf_Test:_make_Adaptive_Mutex_Test()
+#dynamic Adaptive_Mutex_Test Service_Object * Perf_Test/Perf_Test:_make_Adaptive_Mutex_Test()
#dynamic Recursive_Lock_Test Service_Object * Perf_Test/Perf_Test:_make_Recursive_Lock_Test()
#dynamic Adaptive_Recursive_Lock_Test Service_Object * Perf_Test/Perf_Test:_make_Adaptive_Recursive_Lock_Test()
#dynamic Semaphore_Test Service_Object * Perf_Test/Perf_Test:_make_Sema_Test()