Complex Packed Tensors for Faster Homomorphic SIMD Computation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing solutions for processing real numbers using complex numbers in homomorphic encryption schemes, such as the CKKS encryption scheme, result in doubled computation time, communication volume, and RAM requirements, and do not allow for general pair-wise products or dot products.
Innovation Solution
A system and method that encodes real numbers as imaginary parts of complex numbers, enabling single instruction, multiple data (SIMD) operations on complex packed tensors using an integrated circuit in a complex domain, allowing for efficient processing of neural networks and other algebraic computations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If real numbers are processed using complex numbers in homomorphic encryption schemes, then the computation can be performed, but the computation time is doubled
Solution Approach 1:
The patent combines multiple real number operations into a single complex number operation. By encoding real numbers as imaginary parts of complex numbers and using SIMD operations, the system processes multiple data elements simultaneously in the complex domain, thereby reducing the number of separate computation steps required and eliminating the doubling of computation time.
Solution Approach 2:
The patent creates a universal complex packing format that can handle various operations including pair-wise products, dot products, and general algebraic computations. This multi-functional approach allows the same complex number structure to serve multiple computational purposes, improving efficiency across different types of neural network operations and algebraic computations.
2Reliability
If real numbers are processed using complex numbers in homomorphic encryption schemes, then the computation can be performed, but the communication volume is doubled
Solution Approach 1:
The patent merges multiple real number values into a single complex number structure for transmission. By packing real numbers into the imaginary parts of complex numbers and utilizing the real parts for additional data or computational purposes, the system reduces the total volume of data that needs to be communicated while maintaining full computational capability.
3Reliability
If real numbers are processed using complex numbers in homomorphic encryption schemes, then the computation can be performed, but the RAM requirements are doubled
Solution Approach 1:
The patent combines storage of multiple real number values into compact complex number structures in memory. By encoding real numbers as imaginary parts and utilizing the real parts for additional purposes, the system reduces the memory footprint required to store and process the data, thereby halving the RAM requirements while preserving computational functionality.
4Productivity
If existing solutions pack real values into imaginary parts of complex numbers, then packing efficiency is improved, but the allowed set of operators is severely limited
Solution Approach 1:
The patent develops a universal complex packing format that supports a broad range of operators including pair-wise products, dot products, and general algebraic computations. The design ensures that the complex number structure can accommodate diverse mathematical operations required by different neural network layers and algorithms, thereby achieving both high packing efficiency and wide operator compatibility.
Solution Approach 2:
The patent transforms the approach by changing how complex numbers are utilized - specifically by encoding real numbers as imaginary parts while designing operations that work naturally in the complex domain. This parameter transformation enables efficient packing while maintaining compatibility with various operators through careful design of the complex arithmetic operations.
Data Source
AI summary
An example system includes a processor that can receive a number of complex packed tensors, wherein each of the complex packed tensors include real numbers encoded as imaginary parts of complex numbers. The processor can execute a single instruction, multiple data (SIMD) operation on the complex packed tensors using an integrated circuit of real and complex packed tensors in a complex domain to generate a result.


