Patent classifications
H03M7/702
BOUNDS CHECKING
A data processing apparatus is provided, for performing a determination of whether a value falls within a boundary defined by a lower limit between 0 and 2.sup.m and an upper limit between 0 and 2.sup.m. The apparatus includes storage circuitry that stores each of the lower limit and the upper limit in a compressed form as a mantissa of q<m bits and a shared exponent e. A most significant m-q-e bits of said lower limit and said upper limit are equal to a most significant m-q-e bits of said value. Adjustment circuitry performs adjustments to the lower limit and the upper limit in compressed form and boundary comparison circuitry performs the determination on the value using the lower limit and the upper limit in the compressed form.
Neural network activation compression with non-uniform mantissas
Apparatus and methods for training a neural network accelerator using quantized precision data formats are disclosed, and in particular for storing activation values from a neural network in a compressed format having lossy or non-uniform mantissas for use during forward and backward propagation training of the neural network. In certain examples of the disclosed technology, a computing system includes processors, memory, and a compressor in communication with the memory. The computing system is configured to perform forward propagation for a layer of a neural network to produced first activation values in a first block floating-point format. In some examples, activation values generated by forward propagation are converted by the compressor to a second block floating-point format having a non-uniform and/or lossy mantissa. The compressed activation values are stored in the memory, where they can be retrieved for use during back propagation.
Distributable hash filter for nonprobabilistic set inclusion
In certain embodiments, a method includes recursively performing a procedure that includes using an allowed set of object identifiers and a hash function to update a bit array, using a disallowed set of object identifiers and the hash function to further update the bit array where collisions occur, repeating the process with a new allowed set that includes object identifiers from the original allowed set that collided with the disallowed set and a new hash function, until reaching a round where no collisions occurred, generating a data structure that includes the bit arrays created during each recursive round, and compressing the data structure.
METHOD AND APPARATUS FOR COMPRESSING AN APPLICATION
The size of a source application is reduced by compressing a plurality of invoked files, such as SO files, in the source application with a compression algorithm that has a higher compression rate compared to a default compression rate. A decompression file that corresponds with the compression algorithm is inserted into a plurality of invoking files in the source application so that the source application itself can decompress the invoked files that were compressed with the compression algorithm.
Multi-byte compressed string representation
Multi-byte compressed string representation embodiments define a String class control field identifying compression as enabled/disabled, and another control field, identifying a decompressed string created when compression enabled. Tests are noped based on null setting of the compression flag. When arguments to a String class constructor are not compressible, a decompressed String is created and stringCompressionFlag initialized. Endian-aware helper methods for reading/writing byte and character values are defined. Enhanced String class constructors, when characters are not compressible, create a decompressed String, and initialize stringCompressionFlag triggering class load assumptions, overwriting all nopable patch points. A String object sign bit is set to one for decompressed strings when compression enabled, and masking/testing this flag bit is noped. Alternative package protected string constructors and operations are provided. A predetermined location is checked to determine whether supplied arguments to a String class constructor are compressible is performed.
Encoding and Decoding Variable Length Instructions
Methods of encoding and decoding are described which use a variable number of instruction words to encode instructions from an instruction set, such that different instructions within the instruction set may be encoded using different numbers of instruction words. To encode an instruction, the bits within the instruction are re-ordered and formed into instruction words based upon their variance as determined using empirical or simulation data. The bits in the instruction words are compared to corresponding predicted values and some or all of the instruction words that match the predicted values are omitted from the encoded instruction.
MULTI-PIXEL CACHING SCHEME FOR LOSSLESS ENCODING
Systems and methods are provided for encoding a multi-pixel caching scheme for lossless encoders. The systems and methods can include obtaining a sequence of pixels, determining repeating sub-sequences of the sequence of pixels consisting of a single repeated pixel and non-repeating sub-sequences of the sequence of pixels, responsive to the determination, encoding the repeating sub-sequences using a run-length of the repeated pixel and encoding the non-repeating sub-sequences using a multi-pixel cache, wherein the encoding using a multi-pixel cache comprises, encoding non-repeating sub-sequences stored in the multi-pixel cache as the location of the non-repeating sub-sequences in the multi-pixel cache, and encoding non-repeating sub-sequences not stored in the multi-pixel cache using the value of the pixels in the non-repeating sub-sequences.
SYSTEMS AND METHODS FOR USING A PARTITIONED DEEP NEURAL NETWORK WITH A CONSTRAINED DATA CAP
A method using a partitioned deep neural network with a constrained data cap includes receiving, at a first machine learning model, raw data and generating compressed code using the raw data. The method also includes identifying values, of a plurality of values of the compressed code, that are outside of a value range, and generating, using the first machine learning model, a prediction value for each identified value, the prediction value for each respective value of the identified values predicting whether a respective value indicates an anomaly in the raw data. The method also includes further compressing, using the first machine learning model, portions of the compressed code associated with prediction values that are greater than a threshold. The method also includes communicating the portions of the compressed code to a second machine learning model, and receiving, from the second machine learning model, diagnostics information responsive to the portions of the compressed code.
Data compression for a neural network
Systems and methods for generating a representative value of a data set by first compressing a portion of values in the data set to determine a first common value and further compressing a subset of the portion of values to determine a second common value. The representative value is generated by taking the difference between the first common value and the second common value, wherein the representative value corresponds to a mathematical relationship between the first and second common values and each value within the subset of the portion of values. The representative value requires less storage than the first and second common values.
Implementing preemptive customized codeset converter selection on SAAS
A method and apparatus are provided for implementing preemptive customized Codeset Converter Selection (CCS) on Software as a Service (SaaS) in a computer system. A codeset converter is automatically selected for operational modes, customer requests and service tasks which prompt the launching of the SaaS application. The CC selection is based upon history logs, content, and learned behavior performed as the application is launched and referenced without the user having to restart the session. Launching a new session is not needed for the enablement of the CC function.