Patents by Inventor Arie Tal
Arie Tal has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 8341607Abstract: Embodiments of the present invention address deficiencies of the art in respect to pattern matcher generation and provide a method, system and computer program product for automatic pattern matching and generation of intermediate language patterns. In one embodiment of the invention, a pattern matcher generation method can be provided. The method can include identifying input elements from intermediate language code, reducing the identified input elements from the intermediate language code to inputs of common and unique use, creating a unifiable form for each of the input elements of common and unique use, and generating a pattern matcher for each of the input elements of common and unique use in the intermediate language code using a corresponding unifiable form in place of each of the input elements of common and unique use. In particular, the generated pattern matcher can be expression matching and transformation programming framework (EMTF) conformant.Type: GrantFiled: March 13, 2008Date of Patent: December 25, 2012Assignee: International Business Machines CorporationInventors: Kevin A. Stoodley, Arie Tal
-
Patent number: 8146068Abstract: A computer implemented method, system and computer program product for managing heuristic properties for controlling an optimization transformation in a compiler or in other heuristically controlled software in a data processing system. A computer implemented method for controlling an optimization transformation in heuristically controlled software includes defining at least one heuristic property for controlling a behavior of an optimization transformation, and creating at least one heuristic property modifier for each desired change in the behavior of the optimization transformation. At least one of the at least one heuristic property is then modified using the at least one heuristic property modifier for achieving each desired change in the behavior of the optimization transformation.Type: GrantFiled: May 29, 2008Date of Patent: March 27, 2012Assignee: International Business Machines CorporationInventor: Arie Tal
-
Patent number: 8132163Abstract: A method and apparatus for automatic second-order predictive commoning is provided by the present invention. During an analysis phase, the intermediate representation of a program code is analyzed to identify opportunities for second-order predictive commoning optimization. The analyzed information is used by the present invention for apply transformations to the program code, such that the number of memory access and the number of computations are reduced for loop iterations and performance of program code is improved.Type: GrantFiled: January 30, 2009Date of Patent: March 6, 2012Assignee: International Business Machines CorporationInventors: Arie Tal, Dina Tal
-
Patent number: 8127281Abstract: A computer implemented method, system and computer program product for efficient multiple-pattern based matching and transformation of intermediate language expression trees in a compiler. Such an approach includes three constructs of pattern matchers namely a registry, a mapped registry and a registry instance for constructing multiple patterns and for enabling a matching and transformation process. These constructs narrow the number of relevant patterns applied against input expressions without repeatedly implementing an algorithm and also significantly reduce memory footprint and compilation time.Type: GrantFiled: December 12, 2007Date of Patent: February 28, 2012Assignee: International Business Machines CorporationInventor: Arie Tal
-
Patent number: 7913239Abstract: A method, apparatus, and computer instructions are provided by the present invention for a programming framework for easy pattern matching and transformation of intermediate language expression trees. With expression matching and transformation framework (EMTF) of the present invention, pattern matchers may be defined and embedded in a C++ program code in a manner that resembles their intermediate representation. EMTF also provides capabilities for unification, unbinding, transformation, intra-pattern referencing, common operators, creation of pattern objects in a storage pool. With EMTF, less common patterns may be applied against input expressions without repeatedly implementing an algorithm.Type: GrantFiled: March 8, 2005Date of Patent: March 22, 2011Assignee: International Business Machines CorporationInventors: Christopher Mark Barton, Arie Tal
-
Patent number: 7784038Abstract: A method, apparatus, and computer program product are provided by the present invention for a programming framework for easy pattern matching and transformation of intermediate language expression trees. With expression matching and transformation framework (EMTF) of the present invention, pattern matchers may be defined and embedded in a C++ program code in a manner that resembles their intermediate representation. EMTF also provides capabilities for unification, unbinding, transformation, intra-pattern referencing, common operators, creation of pattern objects in a storage pool. Recursive sub-expression matching and recursive transformation are also included.Type: GrantFiled: October 13, 2005Date of Patent: August 24, 2010Assignee: International Business Machines CorporationInventors: Erik P. Charlebois, Arie Tal
-
Publication number: 20090235238Abstract: Embodiments of the present invention address deficiencies of the art in respect to pattern matcher generation and provide a method, system and computer program product for automatic pattern matching and generation of intermediate language patterns. In one embodiment of the invention, a pattern matcher generation method can be provided. The method can include identifying input elements from intermediate language code, reducing the identified input elements from the intermediate language code to inputs of common and unique use, creating a unifiable form for each of the input elements of common and unique use, and generating a pattern matcher for each of the input elements of common and unique use in the intermediate language code using a corresponding unifiable form in place of each of the input elements of common and unique use. In particular, the generated pattern matcher can be EMTF conformant.Type: ApplicationFiled: March 13, 2008Publication date: September 17, 2009Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Kevin A. Stoodley, Arie Tal
-
Publication number: 20090158247Abstract: A computer implemented method system and computer program product for efficient unrolling of imperfect loop nests. A virtual iteration space can be determined based on a UF (Unroll Factor) and the iteration space for each dimension of a nested loop can be divided into a residual iteration space and a non-residual iteration space utilizing unroll-and-jam transformation. The non-residual iteration space for one dimension can be utilized for categorizing the residual and non-residual iteration space for next dimension. This approach can be applied recursively to all dimensions and the non-residual iteration from last dimension can be removed in order to get a clean perfect loop nest. Such an approach can also be applied to triangular loop nests and nested loops having three or more dimensions.Type: ApplicationFiled: December 14, 2007Publication date: June 18, 2009Inventor: Arie Tal
-
Publication number: 20090157721Abstract: A computer implemented method, system and computer program product for efficient multiple-pattern based matching and transformation of intermediate language expression trees in a compiler. Such an approach includes three constructs of pattern matchers namely a registry, a mapped registry and a registry instance for constructing multiple patterns and for enabling a matching and transformation process. These constructs narrow the number of relevant patterns applied against input expressions without repeatedly implementing an algorithm and also significantly reduce memory footprint and compilation time.Type: ApplicationFiled: December 12, 2007Publication date: June 18, 2009Inventor: Arie Tal
-
Publication number: 20090138864Abstract: A method and apparatus for automatic second-order predictive commoning is provided by the present invention. During an analysis phase, the intermediate representation of a program code is analyzed to identify opportunities for second-order predictive commoning optimization. The analyzed information is used by the present invention for apply transformations to the program code, such that the number of memory access and the number of computations are reduced for loop iterations and performance of program code is improved.Type: ApplicationFiled: January 30, 2009Publication date: May 28, 2009Applicant: International Business Machines CorporationInventors: Arie Tal, Dina Tal
-
Patent number: 7493609Abstract: A method and apparatus for automatic second-order predictive commoning is provided by the present invention. During an analysis phase, the intermediate representation of a program code is analyzed to identify opportunities for second-order predictive commoning optimization. The analyzed information is used by the present invention for apply transformations to the program code, such that the number of memory access and the number of computations are reduced for loop iterations and performance of program code is improved.Type: GrantFiled: August 30, 2004Date of Patent: February 17, 2009Assignee: International Business Machines CorporationInventors: Arie Tal, Dina Tal
-
Publication number: 20080229294Abstract: A computer implemented method, system and computer program product for managing heuristic properties for controlling an optimization transformation in a compiler or in other heuristically controlled software in a data processing system. A computer implemented method for controlling an optimization transformation in heuristically controlled software includes defining at least one heuristic property for controlling a behavior of an optimization transformation, and creating at least one heuristic property modifier for each desired change in the behavior of the optimization transformation. At least one of the at least one heuristic property is then modified using the at least one heuristic property modifier for achieving each desired change in the behavior of the optimization transformation.Type: ApplicationFiled: May 29, 2008Publication date: September 18, 2008Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventor: Arie Tal
-
Patent number: 7343601Abstract: A cluster application deployment model provides an efficient computer implemented technique for the deployment of applications on a shared file system, and includes an automated mechanism for mapping the shared application image into the local file system of a new node of a cluster.Type: GrantFiled: February 7, 2005Date of Patent: March 11, 2008Assignee: International Business Machines CorporationInventors: Alain Azagury, Yair Koren, Benny Rochwerger, Arie Tal
-
Patent number: 7318223Abstract: A generic language interface is provided to apply a number of loop optimization transformations. The language interface includes two new directives. The present invention detects the directives in a computer program, and generates code that has been applied at least one loop transformation based on the directives.Type: GrantFiled: August 26, 2004Date of Patent: January 8, 2008Assignee: International Business Machines CorporationInventors: Robert James Blainey, Arie Tal
-
Publication number: 20070089104Abstract: A computer implemented method, system and computer program product for managing heuristic properties for controlling an optimization transformation in a compiler or in other heuristically controlled software in a data processing system. A computer implemented method for controlling an optimization transformation in heuristically controlled software includes defining at least one heuristic property for controlling a behavior of an optimization transformation, and creating at least one heuristic property modifier for each desired change in the behavior of the optimization transformation. At least one of the at least one heuristic property is then modified using the at least one heuristic property modifier for achieving each desired change in the behavior of the optimization transformation.Type: ApplicationFiled: October 13, 2005Publication date: April 19, 2007Inventor: Arie Tal
-
Publication number: 20070088697Abstract: A method, apparatus, and computer program product are provided by the present invention for a programming framework for easy pattern matching and transformation of intermediate language expression trees. With expression matching and transformation framework (EMTF) of the present invention, pattern matchers may be defined and embedded in a C++ program code in a manner that resembles their intermediate representation. EMTF also provides capabilities for unification, unbinding, transformation, intra-pattern referencing, common operators, creation of pattern objects in a storage pool. Recursive sub-expression matching and recursive transformation are also included.Type: ApplicationFiled: October 13, 2005Publication date: April 19, 2007Inventors: Erik Charlebois, Arie Tal
-
Patent number: 7140009Abstract: A transformation technique for nested loops. A virtual iteration space may be determined based on an unroll factor (UF). The virtual iteration space, which includes the actual iteration space, is fanned such that, the virtual iteration space may be evenly divided by a selected UF. Once the virtual iteration space has been calculated or determined, the virtual iteration space is “cut” into regular portions by one or more unroll factors. Portions of the actual iteration space which do not fill the cut portions of the virtual iteration space or which fall outside these cuts which have been evenly divided by the unroll factor form a residue which is calculated. The portions of the actual iteration space which remain arc also evenly divided by the unroll factor(s). An outer loop for this remaining portion of the actual iteration space is then unrolled. This unrolled portion forms a perfect nested loop.Type: GrantFiled: November 14, 2002Date of Patent: November 21, 2006Assignee: International Business Machines CorporationInventors: Arie Tal, Robert J. Blainey
-
Publication number: 20060206876Abstract: A method, apparatus, and computer instructions are provided by the present invention for a programming framework for easy pattern matching and transformation of intermediate language expression trees. With expression matching and transformation framework (EMTF) of the present invention, pattern matchers may be defined and embedded in a C++ program code in a manner that resembles their intermediate representation. EMTF also provides capabilities for unification, unbinding, transformation, intra-pattern referencing, common operators, creation of pattern objects in a storage pool. With EMTF, less common patterns may be applied against input expressions without repeatedly implementing an algorithm.Type: ApplicationFiled: March 8, 2005Publication date: September 14, 2006Applicant: International Business Machines CorporationInventors: Christopher Barton, Arie Tal
-
Publication number: 20060048115Abstract: A method and apparatus for automatic second-order predictive commoning is provided by the present invention. During an analysis phase, the intermediate representation of a program code is analyzed to identify opportunities for second-order predictive commoning optimization. The analyzed information is used by the present invention for apply transformations to the program code, such that the number of memory access and the number of computations are reduced for loop iterations and performance of program code is improved.Type: ApplicationFiled: August 30, 2004Publication date: March 2, 2006Applicant: International Business Machines CorporationInventors: Arie Tal, Dina Tal
-
Publication number: 20060048012Abstract: A method, apparatus, and computer program product for using debug streams to control the amount of trace outputs when debugging software. As debug streams extend on the use of regular output streams, debug streams are very easy to use and simple to implement, while providing a high level of control over the verbosity of traces. A debug stream is created that includes a debug level setting to control the verbosity of the trace outputs. A determination is made as to whether the debug level setting in the debug stream is greater than a specified threshold level. Responsive to a determination that the debug level setting is greater than the specified threshold level, trace outputs are emitted to the debug stream.Type: ApplicationFiled: August 30, 2004Publication date: March 2, 2006Applicant: International Business Machines CorporationInventors: Christopher Barton, Arie Tal