Ex Parte Poulsen et al - Page 5

                Appeal 2007-1959                                                                             
                Application 10/039,789                                                                       

                      6.    FIG. 2 of Poulsen is a flowchart of the algorithm performed by                   
                translation means 120 of Figure 1.  The inputs to the algorithm are program                  
                100 and privatization specification 110; the output is translated program 130                
                (col. 8, ll. 46-49).                                                                         
                      7.    In Figure 2 of Poulsen, Step 200 determines if there are any                     
                more procedures left to be processed in program 100.  If not, the algorithm is               
                complete; otherwise, the next procedure is processed beginning at step 210.                  
                Step 210 determines if there are any more global storage objects to be                       
                privatized in the current procedure.  If not, further procedures are considered              
                at step 200; otherwise, the next global storage object in the current procedure              
                is privatized beginning at step 220.  Step 220 declares a privatizable storage               
                object (i.e., a structure), which encapsulates the current global storage                    
                object, and declares a pointer to that structure (col. 8, ll. 51-61).                        
                      8.   Step 240 in Figure 2 determines if there are any more parallel                    
                regions left to consider in the current procedure.  If not, further global                   
                storage objects in the current procedure are considered at step 210;                         
                otherwise, the next parallel region in the current procedure is processed                    
                beginning at step 250 by translating the references to the current global                    
                storage object into references to the structure declared in step 220.  Step 260              
                inserts a library call, to initialize library data structures for the current                
                parallel region, at the beginning of the parallel region, while step 270 inserts             
                a library call, to initialize the pointer declared in step 220 to point to the               
                appropriate thread-private memory for the current global storage object, at                  
                the beginning of the current parallel region (after the initialization library               
                call inserted in step 260) (col. 8, l. 64 through col. 9, l. 12).                            


                                                     5                                                       

Page:  Previous  1  2  3  4  5  6  7  8  9  10  11  Next

Last modified: September 9, 2013