Patents by Inventor Razvan Peter Figuli

Razvan Peter Figuli 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).

  • Publication number: 20240135158
    Abstract: The present disclosure relates to a method of accessing a n-dimensional tensor of elements in a memory by a computer system. The multidimensional tensor comprises two-dimensional arrays, herein referred to as pages, each page being configured to comprise a predefined number of one-dimensional arrays of elements, herein referred to as sticks. The method includes linearly loading page per page of the tensor, and doing the following for each page: loading the non-empty sticks of the page from the memory using a base address of the page and determining a base address for the subsequent page using the number of loaded sticks and using an address offset indicative of potential empty sticks of the page. In case the number of loaded pages reaches a chunk size, the chunk page counter may be reinitialized and the linear loading may be continued with a subsequent page.
    Type: Application
    Filed: October 13, 2022
    Publication date: April 25, 2024
    Inventors: Julian Heyne, Razvan Peter Figuli, Cedric Lichtenau, Holger Horbach
  • Patent number: 11782683
    Abstract: A system for variable replacement in a template artificial intelligence (AI) accelerator code. The system includes: at least one memory; at least one processor communicatively coupled to the at least one memory, and configured for computing at least one table of variables from a template AI accelerator code; and an AI accelerator including a plurality of engines, and communicatively coupled to the at least one processor and the at least one memory. The AI accelerator is configured to create a variable replaced AI accelerator code for the plurality of engines of the AI accelerator from the template AI accelerator code by replacing variables in the template AI accelerator code with actual values from the at least one table of variables.
    Type: Grant
    Filed: March 24, 2022
    Date of Patent: October 10, 2023
    Assignee: International Business Machines Corporation
    Inventors: Cedric Lichtenau, Preetham M. Lobo, Razvan Peter Figuli, Puja Sethia
  • Publication number: 20230305818
    Abstract: A system for variable replacement in a template artificial intelligence (AI) accelerator code. The system includes: at least one memory; at least one processor communicatively coupled to the at least one memory, and configured for computing at least one table of variables from a template AI accelerator code; and an AI accelerator including a plurality of engines, and communicatively coupled to the at least one processor and the at least one memory. The AI accelerator is configured to create a variable replaced AI accelerator code for the plurality of engines of the AI accelerator from the template AI accelerator code by replacing variables in the template AI accelerator code with actual values from the at least one table of variables.
    Type: Application
    Filed: March 24, 2022
    Publication date: September 28, 2023
    Inventors: Cedric Lichtenau, Preetham M. Lobo, Razvan Peter Figuli, Puja Sethia
  • Publication number: 20230267003
    Abstract: Processing input data for transmittal to a data consumer such as an artificial intelligence engine is performed by arranging the input data into a uniform structure made up of sticks of data combined to form pages of sticks. A stick is any well-sized set of input data elements whereby the size of the stick is fixed. A masking pattern is established for sticks of data having certain ranges of invalid data for consumption of partial sticks while maintaining validity of the input data being transferred. The mask pattern is derived based on set-active-mask-and-value (SAMV) instructions. The derived mask pattern is carried forward for subsequent load instructions to the data consumer.
    Type: Application
    Filed: February 23, 2022
    Publication date: August 24, 2023
    Inventors: Cedric Lichtenau, Vijayalakshmi Srinivasan, Sunil K Shukla, Swagath Venkataramani, Kailash Gopalakrishnan, Holger Horbach, Razvan Peter Figuli, Wei Wang, YULONG LI, Martin A Lutz
  • Patent number: 11663270
    Abstract: An instruction is provided for performing a vector string search. The instruction to be processed is obtained, with the instruction being defined to be a string search instruction to locate occurrence of a substring within a string. The instruction is processed, with the processing including searching the string specified in one operand of the instruction using the substring specified in another operand of the instruction. Based on the searching locating a first full match of the substring within the string, a full match condition indication is returned with position of the first full match in the string, and based on the searching locating only a partial match of the substring at a termination of the string, a partial match condition indication is returned, with the position of the partial match in the string.
    Type: Grant
    Filed: March 22, 2021
    Date of Patent: May 30, 2023
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Cedric Lichtenau, Jonathan D. Bradbury, Eric M. Schwarz, Razvan Peter Figuli, Stefan Payer
  • Publication number: 20230129750
    Abstract: A processor is used for performing a floating-point multiply-add operation of a form A*B+C on at least one multiply-add unit, with three input floating-point operands A, B, C, wherein at least one of the operands A, B, C is substituted by at least one value of a predefined operand value set.
    Type: Application
    Filed: October 27, 2021
    Publication date: April 27, 2023
    Inventors: Razvan Peter Figuli, Cedric Lichtenau, Tina Babinsky, Nicol Hofmann, Burkhard Steinmacher-Burow
  • Patent number: 11221826
    Abstract: Embodiments of the invention are directed to a computer-implemented method of for parallel conversion to binary coded decimal format. The method includes receiving, by a floating point unit (FPU), a value in binary floating point (BFP) format. The BFP value includes an integer part and a fractional part. The FPU converts the BFP value to a binary coded decimal (BCD) value. In parallel to converting the BFP value to a BCD value, the FPU performs a rounding operation on the BFP value. The FPU receives the rounding information and operates on the BCD value accordingly.
    Type: Grant
    Filed: July 30, 2019
    Date of Patent: January 11, 2022
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Stefan Payer, Silvia Melitta Mueller, Razvan Peter Figuli, Revital Arieli
  • Patent number: 11210064
    Abstract: A computer-implemented method includes: receiving, using a processor, a decimal floating point number; and using a floating point unit within the processor to convert the decimal floating point number into a binary coded decimal number, wherein the floating point unit starts a conversion loop subsequent to a rounding loop starting, wherein the rounding loop and the conversion loop run in parallel once started.
    Type: Grant
    Filed: July 30, 2019
    Date of Patent: December 28, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Stefan Payer, Silvia Melitta Mueller, Nicol Hofmann, Razvan Peter Figuli
  • Patent number: 11159183
    Abstract: A method includes generating an extended result from a first operation circuitry having a result register bit width greater than a bus width associated with a residue check path of a second operation circuitry associated with a floating point unit. An extended result residue less a first portion residue of the extended result received from the residue check path is stored as a first partial result residue. The first partial result residue is compared with a first result residue of the second operation circuitry. The extended result residue less both the first partial result residue and a second portion residue of the extended result received from the residue check path as a second partial result residue is compared with a second result residue of the second operation circuitry.
    Type: Grant
    Filed: June 26, 2019
    Date of Patent: October 26, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Nicol Hofmann, Michael Klein, Kerstin Claudia Schelm, Razvan Peter Figuli
  • Patent number: 11099602
    Abstract: A method includes obtaining a trigger signal directed to a component in a subset of components of an electronic circuit, and activating a clock corresponding with the subset of components of the electronic circuit for a preliminary period in response to the trigger signal. An active period is determined based on the trigger signal. The clock remains active for the active period. One of a timer or counter is initiated for the active period. A limit is defined for the one of the timer or counter. The active period is dynamically extended for a busy period after the one of the timer or counter is initiated. The clock is deactivated following the active period.
    Type: Grant
    Filed: April 30, 2019
    Date of Patent: August 24, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Razvan Peter Figuli, Cedric Lichtenau, Stefan Payer, Michael Klein
  • Publication number: 20210232638
    Abstract: An instruction is provided for performing a vector string search. The instruction to be processed is obtained, with the instruction being defined to be a string search instruction to locate occurrence of a substring within a string. The instruction is processed, with the processing including searching the string specified in one operand of the instruction using the substring specified in another operand of the instruction. Based on the searching locating a first full match of the substring within the string, a full match condition indication is returned with position of the first full match in the string, and based on the searching locating only a partial match of the substring at a termination of the string, a partial match condition indication is returned, with the position of the partial match in the string.
    Type: Application
    Filed: March 22, 2021
    Publication date: July 29, 2021
    Inventors: Cedric LICHTENAU, Jonathan D. BRADBURY, Eric M. SCHWARZ, Razvan Peter FIGULI, Stefan PAYER
  • Patent number: 11068541
    Abstract: An instruction is provided for performing a vector string search. The instruction to be processed is obtained, with the instruction being defined to be a string search instruction to locate occurrence of a substring within a string. The instruction is processed, with the processing including searching the string specified in one operand of the instruction using the substring specified in another operand of the instruction. Based on the searching locating a first full match of the substring within the string, a full match condition indication is returned with position of the first full match in the string, and based on the searching locating only a partial match of the substring at a termination of the string, a partial match condition indication is returned, with the position of the partial match in the string.
    Type: Grant
    Filed: February 15, 2019
    Date of Patent: July 20, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Cedric Lichtenau, Jonathan D. Bradbury, Eric M. Schwarz, Razvan Peter Figuli, Stefan Payer
  • Patent number: 11042371
    Abstract: A method for detecting faults in substring search operations includes providing, using a processor unit including vector registers of M vector elements each, an M×M matrix of comparators for characterwise comparison of the elements of a reference string stored in a first one of the vector registers and a target string stored in a second one of the vector registers. A vector element is an n-bit element for encoding a character. A resulting bit vector is generated using comparison performed by the M×M matrix. The resulting bit vector indicates characters of the target string that fully match the reference string and indicates characters of the target string that partially match the reference string. Fault detection in the substring search operations is performed by utilizing the resulting bit vector.
    Type: Grant
    Filed: September 11, 2019
    Date of Patent: June 22, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Razvan Peter Figuli, Stefan Payer, Cedric Lichtenau, Kerstin Claudia Schelm
  • Patent number: 10996951
    Abstract: A method for detecting faults in substring search operations using a processor unit including vector registers of M vector elements each. A non-limiting example of the method includes providing an M×M matrix of comparators for characterwise comparison of the elements of a reference string and a target string. A first zero detect vector having value indicative of terminating element of the target string and a second zero detect vector having a value indicative of terminating element of the reference string are generated. A resulting bit vector is generated using comparison performed by the M×M matrix. The resulting bit vector indicates characters of the target string that fully match the reference string and indicate characters of the target string that partially match the reference string. Fault detection in the substring search operations is performed by comparing the generated zero detect vectors with operands.
    Type: Grant
    Filed: September 11, 2019
    Date of Patent: May 4, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Razvan Peter Figuli, Stefan Payer, Petra Leber, Cedric Lichtenau
  • Publication number: 20210072990
    Abstract: A method for detecting faults in substring search operations includes providing, using a processor unit including vector registers of M vector elements each, an M×M matrix of comparators for characterwise comparison of the elements of a reference string stored in a first one of the vector registers and a target string stored in a second one of the vector registers. A vector element is an n-bit element for encoding a character. A resulting bit vector is generated using comparison performed by the M×M matrix. The resulting bit vector indicates characters of the target string that fully match the reference string and indicates characters of the target string that partially match the reference string. Fault detection in the substring search operations is performed by utilizing the resulting bit vector.
    Type: Application
    Filed: September 11, 2019
    Publication date: March 11, 2021
    Inventors: RAZVAN PETER FIGULI, STEFAN PAYER, CEDRIC LICHTENAU, KERSTIN CLAUDIA SCHELM
  • Publication number: 20210072989
    Abstract: A method for detecting faults in substring search operations using a processor unit including vector registers of M vector elements each. A non-limiting example of the method includes providing an M×M matrix of comparators for characterwise comparison of the elements of a reference string and a target string. A first zero detect vector having value indicative of terminating element of the target string and a second zero detect vector having a value indicative of terminating element of the reference string are generated. A resulting bit vector is generated using comparison performed by the M×M matrix. The resulting bit vector indicates characters of the target string that fully match the reference string and indicate characters of the target string that partially match the reference string. Fault detection in the substring search operations is performed by comparing the generated zero detect vectors with operands.
    Type: Application
    Filed: September 11, 2019
    Publication date: March 11, 2021
    Inventors: RAZVAN PETER FIGULI, STEFAN PAYER, PETRA LEBER, CEDRIC LICHTENAU
  • Publication number: 20210034329
    Abstract: Embodiments of the invention are directed to a computer-implemented method of for parallel conversion to binary coded decimal format. The method includes receiving, by a floating point unit (FPU), a value in binary floating point (BFP) format. The BFP value includes an integer part and a fractional part. The FPU converts the BFP value to a binary coded decimal (BCD) value. In parallel to converting the BFP value to a BCD value, the FPU performs a rounding operation on the BFP value. The FPU receives the rounding information and operates on the BCD value accordingly.
    Type: Application
    Filed: July 30, 2019
    Publication date: February 4, 2021
    Inventors: Stefan Payer, Silvia Melitta Mueller, Razvan Peter Figuli, Revital Arieli
  • Publication number: 20210034328
    Abstract: A computer-implemented method includes: receiving, using a processor, a decimal floating point number; and using a floating point unit within the processor to convert the decimal floating point number into a binary coded decimal number, wherein the floating point unit starts a conversion loop subsequent to a rounding loop starting, wherein the rounding loop and the conversion loop run in parallel once started.
    Type: Application
    Filed: July 30, 2019
    Publication date: February 4, 2021
    Inventors: Stefan Payer, Silvia Melitta Mueller, Nicol Hofmann, Razvan Peter Figuli
  • Publication number: 20200412388
    Abstract: A method includes generating an extended result from a first operation circuitry having a result register bit width greater than a bus width associated with a residue check path of a second operation circuitry associated with a floating point unit. An extended result residue less a first portion residue of the extended result received from the residue check path is stored as a first partial result residue. The first partial result residue is compared with a first result residue of the second operation circuitry. The extended result residue less both the first partial result residue and a second portion residue of the extended result received from the residue check path as a second partial result residue is compared with a second result residue of the second operation circuitry.
    Type: Application
    Filed: June 26, 2019
    Publication date: December 31, 2020
    Inventors: Nicol Hofmann, Michael Klein, Kerstin Claudia Schelm, Razvan Peter Figuli
  • Patent number: 10831496
    Abstract: The present disclosure relates to a method to execute successive dependent instructions from an instruction stream in a processor. In an embodiment, the invention relates to a method to execute successive dependent instructions from an instruction stream in a processor. The method may include identifying a first instruction and a second instruction. A given operand of a second instruction is an output of the first instruction of the pair. The first instruction is older than the second instruction. The method may include loading the operands of the first instruction and the second instruction. The method may include executing the first instruction and the second instruction.
    Type: Grant
    Filed: February 28, 2019
    Date of Patent: November 10, 2020
    Assignee: International Business Machines Corporation
    Inventors: Maarten J. Boersma, Michael Klaus Kroener, Niels Fricke, Razvan Peter Figuli, Nandor Szirmak, Dung Q. Nguyen