Patents by Inventor Yaakov Yaari

Yaakov Yaari 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: 7966482
    Abstract: An apparatus includes an instruction decoder, first and second source registers and a circuit coupled to the decoder to receive packed data from the source registers and to pack the packed data responsive to a pack instruction received by the decoder. A first packed data element and a second packed data element are received from the first source register. A third packed data element and a fourth packed data element are received from the second source register. The circuit packs packing a portion of each of the packed data elements into a destination register resulting with the portion from second packed data element adjacent to the portion from the first packed data element, and the portion from the fourth packed data element adjacent to the portion from the third packed data element.
    Type: Grant
    Filed: June 12, 2006
    Date of Patent: June 21, 2011
    Assignee: Intel Corporation
    Inventors: Alexander Peleg, Yaakov Yaari, Millind Mittal, Larry M. Mennemeier, Benny Eitan
  • Publication number: 20110093682
    Abstract: An apparatus includes an instruction decoder, first and second source registers and a circuit coupled to the decoder to receive packed data from the source registers and to pack the packed data responsive to a pack instruction received by the decoder. A first packed data element and a second packed data element are received from the first source register. A third packed data element and a fourth packed data element are received from the second source register. The circuit packs packing a portion of each of the packed data elements into a destination register resulting with the portion from second packed data element adjacent to the portion from the first packed data element, and the portion from the fourth packed data element adjacent to the portion from the third packed data element.
    Type: Application
    Filed: December 22, 2010
    Publication date: April 21, 2011
    Inventors: ALEXANDER PELEG, YAAKOV YAARI, MILLIND MITTAL, LARRY M. MENNEMEIER, BENNY EITAN
  • Publication number: 20090193402
    Abstract: Optimizing a computer program by setting a first compiler optimization configuration for a first entity of a computer program, setting a second compiler optimization configuration for a second entity of the computer program, where the first and second entities are of the same type and where the first and second compiler optimization configurations differ, and compiling the computer program in accordance with the compiler optimization configurations, thereby creating a compiled program.
    Type: Application
    Filed: January 28, 2008
    Publication date: July 30, 2009
    Inventors: Guy Bashkansky, Gad Haber, Yaakov Yaari, Marcel Zalmanovici
  • Publication number: 20090133005
    Abstract: A method of validating binary code transformation in one aspect includes analyzing original program and transform program. Control flow graphs are generated for both programs. The two graphs are traversed to create respective linear invariant representations. The linear representations are compared to identify incorrect transformations.
    Type: Application
    Filed: September 8, 2008
    Publication date: May 21, 2009
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventor: Yaakov Yaari
  • Patent number: 7530056
    Abstract: The invention provides an improved method and method for locating the origin of runtime defect in software programs. A differential debugging technique may be implemented to locate the diversion point where two programs start to behave differently. In one approach, the method generally involves running the two programs and generating respective control flow diagrams via a static code analyzer or the like. Tracer and supervisor modules may be used to replace addresses in registers with symbols and/or position-independent offsets, and to locate where differences in the register states occur.
    Type: Grant
    Filed: March 31, 2008
    Date of Patent: May 5, 2009
    Assignee: International Business Machines Corporation
    Inventors: Yaakov Yaari, Andre Heilper
  • Patent number: 7480686
    Abstract: A method and apparatus for performing a shift operation on packed data elements having multiple values. One embodiment includes accessing the shift control signal of a first format from a memory. The shift control signal identifyies a first packed shift operation and whether the shift positions are byte positions or bit positions, and causes a processor to execute a set of control signals of a second format, thereby accessing the packed data, shifting the packed data by the number of shift positions according to the first packed shift operation, generating a first replacement data for one of the number of positions, and producing a shifted first packed data comprising the first replacement data.
    Type: Grant
    Filed: May 14, 2004
    Date of Patent: January 20, 2009
    Assignee: Intel Corporation
    Inventors: Derrick Chu Lin, Punit Minocha, Alexander D. Peleg, Yaakov Yaari, Millind Mittal, Larry M. Mennemeier, Benny Eitan, Srinivas Chennupaty
  • Patent number: 7461109
    Abstract: A method and apparatus for providing, in a processor, a shift operation on a packed data element having multiple values. One embodiment of a central processing unit (CPU) includes instruction fetch logic to fetch a single-instruction-multiple-data (SIMD) shift instruction. A register stores a multiple data elements to be operated upon by the SIMD shift instruction. A barrel shifter concurrently shifts the data elements in a bit-wise manner by a variable number of bit positions in response to the SIMD shift instruction.
    Type: Grant
    Filed: June 6, 2007
    Date of Patent: December 2, 2008
    Assignee: Intel Corporation
    Inventors: Derrick Chu Lin, Punit Minocha, Alexander D. Peleg, Yaakov Yaari, Millind Mittal, Larry M. Mennemeier, Benny Eitan
  • Patent number: 7451169
    Abstract: A method and apparatus for providing, in a processor, a shift operation on a packed data element having multiple values. The apparatus having multiple muxes, each of the multiple muxes having a first input, a second input, a select input and an output. Each of the multiple bits that represent a shifted packed intermediate result on a first bus is coupled to the corresponding first input. Each of the multiple bits representing a replacement bit for one of the multiple values is coupled to a corresponding second input. Each of the multiple bits driven by a correction circuit is coupled to a corresponding select input. Each output corresponds to a bit of a shifted packed result.
    Type: Grant
    Filed: June 15, 2006
    Date of Patent: November 11, 2008
    Assignee: Intel Corporation
    Inventors: Derrick Chu Lin, Punit Minocha, Alexander D. Peleg, Yaakov Yaari, Millind Mittal, Larry M. Mennemeier, Benny Eitan
  • Patent number: 7430733
    Abstract: A method of validating binary code transformation in one aspect includes analyzing original program and transform program. Control flow graphs are generated for both programs. The two graphs are traversed to create respective linear invariant representations. The linear representations are compared to identify incorrect transformations.
    Type: Grant
    Filed: November 15, 2007
    Date of Patent: September 30, 2008
    Assignee: International Business Machines Corporation
    Inventor: Yaakov Yaari
  • Publication number: 20070239810
    Abstract: A method and apparatus for providing, in a processor, a shift operation on a packed data element having multiple values. One embodiment of a central processing unit (CPU) includes instruction fetch logic to fetch a single-instruction-multiple-data (SIMD) shift instruction. A register stores a multiple data elements to be operated upon by the SIMD shift instruction. A barrel shifter concurrently shifts the data elements in a bit-wise manner by a variable number of bit positions in response to the SIMD shift instruction.
    Type: Application
    Filed: June 6, 2007
    Publication date: October 11, 2007
    Inventors: DERRICK LIN, Punit Minocha, Alexander Peleg, Yaakov Yaari, Millind Mittal, Larry Mennemeier, Benny Eitan
  • Publication number: 20070157178
    Abstract: A computer-implemented method for code optimization includes collecting a profile of execution of an application program, which includes a target module, which calls one or more functions in a source module. The source and target modules may be independently-linked object files. Responsively to the profile, at least one function from the source module is identified and cloned to the target module, thereby generating an expanded target module. The expended target module is restructured so as to optimize the execution of the application program.
    Type: Application
    Filed: January 4, 2006
    Publication date: July 5, 2007
    Applicant: International Business Machines Corporation
    Inventors: Alex Kogan, Yaakov Yaari
  • Publication number: 20060235914
    Abstract: A method and apparatus for providing, in a processor, a shift operation on a packed data element having multiple values. The apparatus having multiple muxes, each of the multiple muxes having a first input, a second input, a select input and an output. Each of the multiple bits that represent a shifted packed intermediate result on a first bus is coupled to the corresponding first input. Each of the multiple bits representing a replacement bit for one of the multiple values is coupled to a corresponding second input. Each of the multiple bits driven by a correction circuit is coupled to a corresponding select input. Each output corresponds to a bit of a shifted packed result.
    Type: Application
    Filed: June 15, 2006
    Publication date: October 19, 2006
    Inventors: Derrick Lin, Punit Minocha, Alexander Peleg, Yaakov Yaari, Millind Mittal, Larry Mennemeier, Benny Eitan
  • Publication number: 20060236076
    Abstract: An apparatus includes an instruction decoder, first and second source registers and a circuit coupled to the decoder to receive packed data from the source registers and to pack the packed data responsive to a pack instruction received by the decoder. A first packed data element and a second packed data element are received from the first source register. A third packed data element and a fourth packed data element are received from the second source register. The circuit packs packing a portion of each of the packed data elements into a destination register resulting with the portion from second packed data element adjacent to the portion from the first packed data element, and the portion from the fourth packed data element adjacent to the portion from the third packed data element.
    Type: Application
    Filed: June 12, 2006
    Publication date: October 19, 2006
    Inventors: Alexander Peleg, Yaakov Yaari, Millind Mittal, Larry Mennemeier, Benny Eitan
  • Patent number: 7117232
    Abstract: A method and apparatus for providing, in a processor, a shift operation on a packed data element having multiple values. The apparatus having multiple muxes, each of the multiple muxes having a first input, a second input, a select input and an output. Each of the multiple bits that represent a shifted packed intermediate result on a first bus is coupled to the corresponding first input. Each of the multiple bits representing a replacement bit for one of the multiple values is coupled to a corresponding second input. Each of the multiple bits driven by a correction circuit is coupled to a corresponding select input. Each output corresponds to a bit of a shifted packed result.
    Type: Grant
    Filed: May 27, 2005
    Date of Patent: October 3, 2006
    Assignee: Intel Corporation
    Inventors: Derrick Chu Lin, Punit Minocha, Alexander D. Peleg, Yaakov Yaari, Millind Mittal, Larry M. Mennemeier, Benny Eitan
  • Publication number: 20050219897
    Abstract: A method and apparatus for providing, in a processor, a shift operation on a packed data element having multiple values. The apparatus having multiple muxes, each of the multiple muxes having a first input, a second input, a select input and an output. Each of the multiple bits that represent a shifted packed intermediate result on a first bus is coupled to the corresponding first input. Each of the multiple bits representing a replacement bit for one of the multiple values is coupled to a corresponding second input. Each of the multiple bits driven by a correction circuit is coupled to a corresponding select input. Each output corresponds to a bit of a shifted packed result.
    Type: Application
    Filed: May 27, 2005
    Publication date: October 6, 2005
    Inventors: Derrick Lin, Punit Minocha, Alexander Peleg, Yaakov Yaari, Millind Mittal, Larry Mennemeier, Benny Eitan
  • Patent number: 6901420
    Abstract: A method and apparatus for performing a shift operation on a packed data element having multiple values. The apparatus having multiple muxes, each of the multiple muxes having a first input, a second input, a select input and an output. Each of the multiple bits that represent a shifted packed intermediate result on a first bus is coupled to the corresponding first input. Each of the multiple bits representing a replacement bit for one of the multiple values is coupled to a corresponding second input. Each of the multiple bits driven by a correction circuit is coupled to a corresponding select input. Each output corresponds to a bit of a shifted packed result.
    Type: Grant
    Filed: July 18, 2003
    Date of Patent: May 31, 2005
    Assignee: Intel Corporation
    Inventors: Derrick Chu Lin, Punit Minocha, Alexander D. Peleg, Yaakov Yaari, Millind Mittal, Larry M. Mennemeier, Benny Eitan
  • Publication number: 20040215681
    Abstract: A method and apparatus for performing a shift operation on packed data elements having multiple values. One embodiment includes accessing the shift control signal of a first format from a memory. The shift control signal identifyies a first packed shift operation and whether the shift positions are byte positions or bit positions, and causes a processor to execute a set of control signals of a second format, thereby accessing the packed data, shifting the packed data by the number of shift positions according to the first packed shift operation, generating a first replacement data for one of the number of positions, and producing a shifted first packed data comprising the first replacement data.
    Type: Application
    Filed: May 14, 2004
    Publication date: October 28, 2004
    Inventors: Derrick Chu Lin, Punit Minocha, Alexander D. Peleg, Yaakov Yaari, Millind Mittal, Larry M. Mennemeier, Benny Eitan, Srinivas Chennupaty
  • Patent number: 6738793
    Abstract: An apparatus for performing a shift operation on a packed data element having multiple values. The apparatus having multiple muxes, each of the multiple muxes having a first input, a second input, a select input and an output. Each of the multiple bits that represent a shifted packed intermediate result on a first bus is coupled to the corresponding first input. Each of the multiple bits representing a replacement bit for one of the multiple values is coupled to a corresponding second input. Each of the multiple bits driven by a correction circuit is coupled to a corresponding select input. Each output corresponds to a bit of a shifted packed result.
    Type: Grant
    Filed: February 14, 2001
    Date of Patent: May 18, 2004
    Assignee: Intel Corporation
    Inventors: Derrick Chu Lin, Punit Minocha, Alexander D. Peleg, Yaakov Yaari, Millind Mittal, Larry M. Mennemeier, Benny Eitan, Srinivas Chennupaty
  • Publication number: 20040024800
    Abstract: A method and apparatus for performing a shift operation on a packed data element having multiple values. The apparatus having multiple muxes, each of the multiple muxes having a first input, a second input, a select input and an output. Each of the multiple bits that represent a shifted packed intermediate result on a first bus is coupled to the corresponding first input. Each of the multiple bits representing a replacement bit for one of the multiple values is coupled to a corresponding second input. Each of the multiple bits driven by a correction circuit is coupled to a corresponding select input. Each output corresponds to a bit of a shifted packed result.
    Type: Application
    Filed: July 18, 2003
    Publication date: February 5, 2004
    Inventors: Derrick Chu Lin, Punit Minocha, Alexander D. Peleg, Yaakov Yaari, Millind Mittal, Larry M. Mennemeier, Benny Eitan
  • Patent number: 6631389
    Abstract: An apparatus for performing a shift operation on a packed data element having a multiple values. The apparatus having multiple muxes, each of the multiple muxes having a first input, a second input, a select input and an output. Each of the multiple bits that represent a shifted packed intermediate result on a first bus is coupled to the corresponding first input. Each of the multiple bits representing a replacement bit for one of the multiple values is coupled to a corresponding second input. Each of the multiple bits driven by a correction circuit is coupled to a corresponding select input. Each output corresponds to a bit of a shifted packed result.
    Type: Grant
    Filed: December 22, 2000
    Date of Patent: October 7, 2003
    Assignee: Intel Corporation
    Inventors: Derrick Chu Lin, Punit Minocha, Alexander D. Peleg, Yaakov Yaari, Millind Mittal, Larry M. Mennemeier, Benny Eitan