Changeset ce9f9d4
- Timestamp:
- Sep 16, 2021, 2:19:57 PM (3 years ago)
- Branches:
- ADT, ast-experimental, enum, forall-pointer-decay, master, pthread-emulation, qualifiedEnum
- Children:
- a8367eb
- Parents:
- a5d1fe7
- Location:
- benchmark
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
benchmark/Makefile.am
ra5d1fe7 rce9f9d4 372 372 chmod a+x a.out 373 373 374 ## ========================================================================================================= 375 374 376 mutexStmt$(EXEEXT) : \ 377 mutexStmt-cpp1.run \ 378 mutexStmt-cpp2.run \ 379 mutexStmt-cpp4.run \ 380 mutexStmt-cpp8.run \ 381 mutexStmt-java.run \ 375 382 mutexStmt-lock1.run \ 376 383 mutexStmt-lock2.run \ … … 397 404 $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/mutexStmt/lock8.cfa 398 405 406 mutexStmt-cpp1$(EXEEXT): 407 $(BENCH_V_CXX)$(CXXCOMPILE) -std=c++17 $(srcdir)/mutexStmt/cpp1.cc 408 409 mutexStmt-cpp2$(EXEEXT): 410 $(BENCH_V_CXX)$(CXXCOMPILE) -std=c++17 $(srcdir)/mutexStmt/cpp2.cc 411 412 mutexStmt-cpp4$(EXEEXT): 413 $(BENCH_V_CXX)$(CXXCOMPILE) -std=c++17 $(srcdir)/mutexStmt/cpp4.cc 414 415 mutexStmt-cpp8$(EXEEXT): 416 $(BENCH_V_CXX)$(CXXCOMPILE) -std=c++17 $(srcdir)/mutexStmt/cpp8.cc 417 399 418 mutexStmt-monitor1$(EXEEXT): 400 419 $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/mutexStmt/monitor1.cfa … … 417 436 mutexStmt-no-stmt-lock8$(EXEEXT): 418 437 $(BENCH_V_CFA)$(CFACOMPILE) $(srcdir)/mutexStmt/no_stmt_lock8.cfa 438 439 mutexStmt-java$(EXEEXT): 440 $(BENCH_V_JAVAC)javac -d $(builddir) $(srcdir)/mutexStmt/JavaThread.java 441 echo "#!/bin/sh" > a.out 442 echo "java JavaThread \"$$""@\"" >> a.out 443 chmod a+x a.out 419 444 420 445 ## ========================================================================================================= -
benchmark/bench.h
ra5d1fe7 rce9f9d4 21 21 return 1000000000LL * ts.tv_sec + ts.tv_nsec; 22 22 } // bench_time 23 24 25 #if defined(__cforall) 26 struct test_spinlock { 27 volatile bool lock; 28 }; 29 30 static inline void lock( test_spinlock & this ) { 31 for ( ;; ) { 32 if ( (this.lock == 0) && (__atomic_test_and_set( &this.lock, __ATOMIC_ACQUIRE ) == 0) ) break; 33 } 34 } 35 36 static inline void unlock( test_spinlock & this ) { 37 __atomic_clear( &this.lock, __ATOMIC_RELEASE ); 38 } 39 #endif 23 40 24 41 #ifndef BENCH_N
Note: See TracChangeset
for help on using the changeset viewer.