Patents by Inventor Amit Golander
Amit Golander 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: 8593308Abstract: A system and method of accelerating dynamic Huffman decompaction within the inflate algorithm. To improve the performance of a decompression engine during the inflate/decompression process, Huffman trees decompacted a priori are used thus eliminating the requirement of decompacting the DHT for each input stream. The Huffman tree in the input stream is matched prior to decompaction. If a match is found, the stored decompacted Huffman tree is used which reduces the required decompression time.Type: GrantFiled: May 31, 2012Date of Patent: November 26, 2013Assignee: International Business Machines CorporationInventors: Giora Biran, Amit Golander, Shai I Tahar
-
Patent number: 8542135Abstract: A system and method of selecting a predefined Huffman dictionary from a bank of dictionaries. The dictionary selection mechanism of the present invention effectively breaks the built-in tradeoff between compression ratio and compression rate for both hardware and software compression implementations. A mechanism is provided for automatically creating a predefined Huffman dictionary for a set of input files. The dictionary selection mechanism achieves high compression rate and ratio leveraging predefined Huffman dictionaries and provides a mechanism for dynamically speculating which predefined dictionary to select per input data block, thereby achieving close to a dynamic Huffman ratio at a static Huffman rate. In addition, a feedback loop is used to monitor the ongoing performance of the preset currently selected for use by the hardware accelerator. If the current preset is not optimal it is replaced with an optimal preset.Type: GrantFiled: November 24, 2011Date of Patent: September 24, 2013Assignee: International Business Machines CorporationInventors: Amit Golander, Shai Ishaya Tahar
-
Publication number: 20130246761Abstract: Systems and methods are disclosed for sharing one or more registers in an extended processor architecture. The method comprises executing a first thread and a second thread on a processor core supported by an extended register file, wherein one or more registers in the extended register file are accessible by said first and second threads; loading first data for use by the first thread into a first set of physical registers mapped to a first set of logical registers associated with the first thread; and providing the first data for use by the second thread by maintaining the first data in the first set of physical registers and mapping set first set of physical registers to a second set of logical registers associated with the second thread.Type: ApplicationFiled: March 13, 2012Publication date: September 19, 2013Applicant: International Business Machines CorporationInventors: Jeffrey H. Derby, Amit Golander, Sagi Manole
-
Publication number: 20130159811Abstract: A novel and useful hybrid mechanism whereby hardware acceleration is combined with software such that the compression rate achieved is significantly increased while maintaining the original compression ratio (e.g., using full DHT and not SHT or an approximation). The compression acceleration mechanism is applicable to a hardware accelerator tightly coupled with the general purpose processor. The compression task is divided and parallelized between hardware and software wherein each compression task is split into two acceleration requests: a first request that performs SHT encoding using hardware acceleration and provides post-LZ frequency statistics; and a second request that performs SHT decoding and DHT encoding using the DHT generated in software.Type: ApplicationFiled: December 15, 2011Publication date: June 20, 2013Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Giora Biran, Amit Golander, Kiyoshi Nishino, Nobuyoshi Tanaka
-
Publication number: 20130151818Abstract: A method and system for improving performance and latency of instruction execution within an execution pipeline in a processor. The method includes finding, while decoding an instruction, a pointer register used by the instruction; reading the pointer register; validating a pointer register entry; reading, if the pointer register entry is valid, a register file entry; validating a register file entry; validating, if the register file entry is invalid, a valid register file entry wherein the valid register file entry is in the register file's future file; bypassing, if the valid register file entry is valid, a valid register file value from the register file's future file to the execution pipeline wherein the valid register file value is in the valid register file entry; and executing the instruction using the valid register file value; wherein at least one of the steps is carried out using a computer device.Type: ApplicationFiled: December 13, 2011Publication date: June 13, 2013Applicant: International Business Machines CorporationInventors: Erez Barak, Alejandro Rico Carro, Jeffrey H. Derby, Amit Golander, Omer Heymann, Nadav Levison, Sagi Manole, Robert K. Montoye
-
Publication number: 20130138922Abstract: Systems and methods are disclosed for enhancing the throughput of a processor by minimizing the number of transfers of data associated with data transfer between a register file and a memory stack. The register file used by a processor running an application is partitioned into a number of blocks. A subset of the blocks of the register file is defined in an application binary interface enabling the subset to be pre-allocated and exposed to the application binary interface. Optionally, blocks other than the subset are not exposed to the application binary interface so that the data relating to application function switch or a context switch is not transferred between the unexposed blocks and a memory stack.Type: ApplicationFiled: November 29, 2011Publication date: May 30, 2013Applicant: International Business Machines CorporationInventors: Revital Eres, Amit Golander, Nadav Levison, Sagi Manole, Ayal Zaks
-
Publication number: 20130135123Abstract: A system and method of selecting a predefined Huffman dictionary from a bank of dictionaries. The dictionary selection mechanism of the present invention effectively breaks the built-in tradeoff between compression ratio and compression rate for both hardware and software compression implementations. A mechanism is provided for automatically creating a predefined Huffman dictionary for a set of input files. The dictionary selection mechanism achieves high compression rate and ratio leveraging predefined Huffman dictionaries and provides a mechanism for dynamically speculating which predefined dictionary to select per input data block, thereby achieving close to a dynamic Huffman ratio at a static Huffman rate. In addition, a feedback loop is used to monitor the ongoing performance of the preset currently selected for use by the hardware accelerator. If the current preset is not optimal it is replaced with an optimal preset.Type: ApplicationFiled: November 24, 2011Publication date: May 30, 2013Applicant: International Business Machines CorporationInventors: Amit Golander, Shai Ishaya Tahar
-
Publication number: 20130135121Abstract: A system and method of selecting a predefined Huffman dictionary from a bank of dictionaries. The dictionary selection mechanism of the present invention effectively breaks the built-in tradeoff between compression ratio and compression rate for both hardware and software compression implementations. A mechanism is provided for automatically creating a predefined Huffman dictionary for a set of input files. The dictionary selection mechanism achieves high compression rate and ratio leveraging predefined Huffman dictionaries and provides a mechanism for dynamically speculating which predefined dictionary to select per input data block, thereby achieving close to a dynamic Huffman ratio at a static Huffman rate. In addition, a feedback loop is used to monitor the ongoing performance of the preset currently selected for use by the hardware accelerator. If the current preset is not optimal it is replaced with an optimal preset.Type: ApplicationFiled: November 24, 2011Publication date: May 30, 2013Applicant: International Business Machines CorporationInventors: Lior Glass, Giora Biran, Amit Golander
-
Publication number: 20130135122Abstract: A system and method of selecting a predefined Huffman dictionary from a bank of dictionaries. The dictionary selection mechanism of the present invention effectively breaks the built-in tradeoff between compression ratio and compression rate for both hardware and software compression implementations. A mechanism is provided for automatically creating a predefined Huffman dictionary for a set of input files. The dictionary selection mechanism achieves high compression rate and ratio leveraging predefined Huffman dictionaries and provides a mechanism for dynamically speculating which predefined dictionary to select per input data block, thereby achieving close to a dynamic Huffman ratio at a static Huffman rate. In addition, a feedback loop is used to monitor the ongoing performance of the preset currently selected for use by the hardware accelerator. If the current preset is not optimal it is replaced with an optimal preset.Type: ApplicationFiled: November 24, 2011Publication date: May 30, 2013Applicant: International Business Machines CorporationInventors: Lior Glass, Giora Biran, Amit Golander
-
Publication number: 20120203946Abstract: A novel and useful cost effective mechanism for detecting the livelock/starvation of transactions in a ring shaped interconnect that utilizes minimal logic resources. Rather than monitor all transactions concurrently in the ring, the mechanism monitors only a single transaction in the ring. A sampling point is located at a point in the ring which contains a set of N latches. If the monitored transaction is not being starved, it is released and the detection logic moves on the next candidate transaction in round robin fashion. If the monitored transaction passes the sampling point a threshold number of times, it is deemed to be starved and a starvation prevention handling procedure is activated. By traversing the entire ring a single transaction at a time, all starving transactions will eventually be detected with an upper limit on the detection time of O(N2).Type: ApplicationFiled: February 8, 2011Publication date: August 9, 2012Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Amit Golander, Omer Heymann, Nadav Levison, Eric F. Robinson
-
Patent number: 8102238Abstract: Embodiments of the invention are generally directed to controlling access to an area or enclosed location, wherein any person in possession of a specified RFID badge or other RFID device is defined to be a person who is authorized to be in the area or location. One embodiment, directed to a method, includes the step of detecting the presence of a particular person in the area, who is not in possession of a specified RFID device. In response to detecting the presence of the particular person, a search is initiated to determine whether any authorized person is present in the area. Upon sensing the presence of one or more authorized persons in the area, the method further determines whether any of the sensed authorized persons is accompanying the particular person. In response to determining that no authorized person is accompanying the particular person, prespecified corrective action is initiated with respect to the particular person.Type: GrantFiled: May 30, 2008Date of Patent: January 24, 2012Assignee: International Business Machines CorporationInventors: Amit Golander, Mark E. Peters
-
Publication number: 20110307890Abstract: A novel and useful system and method of improving the utilization of a special purpose accelerator in a system incorporating a general purpose processor. In some embodiments, the current queue status of the special purpose accelerator is periodically monitored using a background monitoring process/thread and the current queue status is stored in a shared memory. A shim redirection layer added a priori to a library function task determines at runtime and in user space whether to execute the library function task on the special purpose accelerator or the general purpose processor. At runtime, using the shim redirection layer and based on the current queue status, it is determined whether to execute the library function task on the special purpose accelerator or on the general purpose processor.Type: ApplicationFiled: June 9, 2010Publication date: December 15, 2011Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Heather D. Achilles, Giora Biran, Amit Golander, Nancy A. Greco
-
Publication number: 20110071990Abstract: A novel and useful system and method of fast history compression in a pipelined architecture with both speculation and low-penalty misprediction recovery. The method of the present invention speculates that a current input byte does not continue an earlier string, but either starts a new string or represents a literal (no match). As previous bytes are checked if they start a string, the method of the present invention detects if speculation for the current byte is correct. If speculation is not correct, then various methods of recovery are employed, depending on the repeating string length.Type: ApplicationFiled: September 23, 2009Publication date: March 24, 2011Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Giora Biran, Amit Golander
-
Patent number: 7834781Abstract: A novel and useful method of constructing a fast approximation of a dynamic Huffman table from a data sample comprising a subset of data to be compressed. The frequency of incidence of each symbol in the sample is calculated, and the symbols are then allocated to predefined bins based on their frequency of incidence. The bins are then transformed into binary sub-trees, where the leaf nodes of the binary sub-trees comprise the symbols of the bin associated with the binary sub-trees. The binary sub-trees are then combined via nesting, thereby creating a coarse grained binary tree, where all leaves are mapped to a specified number of depths. The coarse grained binary tree is then traversed, thereby yielding a canonical code for each symbol, thereby defining the entries for a dynamic Huffman table.Type: GrantFiled: April 6, 2009Date of Patent: November 16, 2010Assignee: International Business Machines CorporationInventors: Giora Biran, Hubertus Franke, Amit Golander, Hao Yu
-
Publication number: 20100253556Abstract: A novel and useful method of constructing a fast approximation of a dynamic Huffman table from a data sample comprising a subset of data to be compressed. The frequency of incidence of each symbol in the sample is calculated, and the symbols are then allocated to predefined bins based on their frequency of incidence. The bins are then transformed into binary sub-trees, where the leaf nodes of the binary sub-trees comprise the symbols of the bin associated with the binary sub-trees. The binary sub-trees are then combined via nesting, thereby creating a coarse grained binary tree, where all leaves are mapped to a specified number of depths. The coarse grained binary tree is then traversed, thereby yielding a canonical code for each symbol, thereby defining the entries for a dynamic Huffman table.Type: ApplicationFiled: April 6, 2009Publication date: October 7, 2010Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Giora Biran, Hubertus Franke, Amit Golander, Hao Yu
-
Publication number: 20100257320Abstract: Techniques for replacing one or more blocks in a cache, the one or more blocks being associated with a plurality of data streams, are provided. The one or more blocks in the cache are grouped into one or more groups. Each group corresponding to one of the plurality of data streams. One or more incoming blocks are received. To free space, the one or more blocks of the one or more groups in the cache are invalidated in accordance with at least one of an inactivity of a given data stream corresponding to the one or more groups and a length of the one or more groups. The one or more incoming blocks are stored in the cache. A number of data streams maintained within the cache is maximized.Type: ApplicationFiled: April 7, 2009Publication date: October 7, 2010Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Brian Bass, Giora Biran, Hubertus Franke, Amit Golander, Hao Yu
-
Patent number: 7692561Abstract: A method for decompressing a stream of a compressed data packet includes determining whether first data of a data-dictionary for a first decompression copy operation is located in a history buffer on a remote memory or a local memory, and when it is determined that the first data is located in the remote memory, stalling the first decompression copy operation, performing a second decompression operation using second data that is located in the history buffer on the local memory and fetching the first data from the remote memory to the history buffer on the local memory. The method further includes performing the first decompression operation using the first data in the history buffer on the local memory.Type: GrantFiled: July 17, 2008Date of Patent: April 6, 2010Assignee: International Business Machines CorporationInventors: Giora Biran, Hubertus Franke, Amit Golander, Hao Yu
-
Publication number: 20100013678Abstract: A method for decompressing a stream of a compressed data packet includes determining whether first data of a data-dictionary for a first decompression copy operation is located in a history buffer on a remote memory or a local memory, and when it is determined that the first data is located in the remote memory, stalling the first decompression copy operation, performing a second decompression operation using second data that is located in the history buffer on the local memory and fetching the first data from the remote memory to the history buffer on the local memory. The method further includes performing the first decompression operation using the first data in the history buffer on the local memory.Type: ApplicationFiled: July 17, 2008Publication date: January 21, 2010Inventors: Giora Biran, Hubertus Franke, Amit Golander, Hao Yu
-
Publication number: 20090295534Abstract: Embodiments of the invention are generally directed to controlling access to an area or enclosed location, wherein any person in possession of a specified RFID badge or other RFID device is defined to be a person who is authorized to be in the area or location. One embodiment, directed to a method, includes the step of detecting the presence of a particular person in the area, who is not in possession of a specified RFID device. In response to detecting the presence of the particular person, a search is initiated to determine whether any authorized person is present in the area. Upon sensing the presence of one or more authorized persons in the area, the method further determines whether any of the sensed authorized persons is accompanying the particular person. In response to determining that no authorized person is accompanying the particular person, prespecified corrective action is initiated with respect to the particular person.Type: ApplicationFiled: May 30, 2008Publication date: December 3, 2009Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Amit Golander, Mark E. Peters
-
Publication number: 20090140854Abstract: A method for monitoring for radio frequency (RF) signals to determine an unexpected presence, activity, or security threat, the method includes: scanning for RF signals; detecting an RF signal; determining at least one of the following: whether the RF signal is jammed, whether the RF signal is assigned to a device that is forbidden, and whether the RF signal is assigned to a device breaking one or more pre-defined rules; sending a potential threat alert in response to the determining; and wherein the one or more pre-defined rules are held in a database.Type: ApplicationFiled: December 4, 2007Publication date: June 4, 2009Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventor: Amit Golander