ADT
        aaron-thesis
        arm-eh
        ast-experimental
        cleanup-dtors
        deferred_resn
        demangler
        enum
        forall-pointer-decay
        jacob/cs343-translation
        jenkins-sandbox
        new-ast
        new-ast-unique-expr
        new-env
        no_list
        persistent-indexer
        pthread-emulation
        qualifiedEnum
        resolv-new
        with_gc
      
      
        
          | 
            Last change
 on this file since cd7ef0b was             7d9c987, checked in by Thierry Delisle <tdelisle@…>, 8 years ago           | 
        
        
          | 
             
Removed unnecessary comment in benchmarks 
 
           | 
        
        
          
            
              - 
Property                 mode
 set to                 
100644
               
             
           | 
        
        
          | 
            File size:
            613 bytes
           | 
        
      
      
| Rev | Line |   | 
|---|
| [de90452] | 1 | #include <fstream>
 | 
|---|
 | 2 | #include <stdlib>
 | 
|---|
| [29f44a74] | 3 | #include <thread>
 | 
|---|
| [de90452] | 4 | 
 | 
|---|
| [8cb6fcd] | 5 | #include "bench.h"
 | 
|---|
| [de90452] | 6 | 
 | 
|---|
| [b510ac2] | 7 | coroutine GreatSuspender {};
 | 
|---|
| [de90452] | 8 | 
 | 
|---|
 | 9 | void ?{}( GreatSuspender * this ) {
 | 
|---|
 | 10 |         prime(this);
 | 
|---|
 | 11 | }
 | 
|---|
 | 12 | 
 | 
|---|
 | 13 | void main( GreatSuspender * this )
 | 
|---|
 | 14 | {
 | 
|---|
 | 15 |         while( true ) {
 | 
|---|
 | 16 |                 suspend();
 | 
|---|
 | 17 |         }
 | 
|---|
 | 18 | }
 | 
|---|
 | 19 | 
 | 
|---|
 | 20 | void resumer( GreatSuspender * this, const unsigned int NoOfTimes ) {
 | 
|---|
 | 21 |         for ( volatile unsigned int i = 0; i < NoOfTimes; i += 1 ) {
 | 
|---|
 | 22 |                 resume( this );
 | 
|---|
 | 23 |         }
 | 
|---|
 | 24 | }
 | 
|---|
 | 25 | 
 | 
|---|
 | 26 | int main() {
 | 
|---|
 | 27 |         const unsigned int NoOfTimes = N;
 | 
|---|
 | 28 |         long long int StartTime, EndTime;
 | 
|---|
 | 29 | 
 | 
|---|
 | 30 |         GreatSuspender s;
 | 
|---|
 | 31 | 
 | 
|---|
 | 32 |         StartTime = Time();
 | 
|---|
 | 33 |         resumer( &s, NoOfTimes );
 | 
|---|
 | 34 |         EndTime = Time();
 | 
|---|
 | 35 | 
 | 
|---|
 | 36 |         sout | ( EndTime - StartTime ) / NoOfTimes | endl;
 | 
|---|
 | 37 | }
 | 
|---|
       
      
  Note:
 See   
TracBrowser
 for help on using the repository browser.