Space- And Time-Efficient Enumerations
    1.
    发明公开

    公开(公告)号:US20230385028A1

    公开(公告)日:2023-11-30

    申请号:US17664835

    申请日:2022-05-24

    发明人: Mario Wolczko

    IPC分类号: G06F8/20 G06F8/41 G06F9/455

    摘要: Systems, computer instructions and computer-implemented methods are disclosed for implementing space- and time-efficient enumerations. An instance of an enumeration class may be created with a constant, plurality of enumerations. A plurality of objects corresponding to the respective enumerations may be stored in memory along with a lookup table indexed by respective ordinal values of the plurality of enumerations, the lookup table including respective references to the stored objects of the instantiated enumeration class. A reference to an enumeration may be stored in a memory location by storing an ordinal value of the enumeration. A determination may then be made to convert a stored ordinal value to a reference to an object, and responsive to the determination, the ordinal value may be loaded and used as an index into the lookup table to obtain the reference to the object corresponding to the enumeration.

    Methods and devices for computing a memory size for software optimization

    公开(公告)号:US11656854B2

    公开(公告)日:2023-05-23

    申请号:US17460749

    申请日:2021-08-30

    IPC分类号: G06F8/41 G06F8/30

    摘要: There is provided methods and devices for computing a tile size for software optimization. A method includes receiving, by a computing device, information indicative of one or more of a set of loop bounds and a set of data shapes; processing, by the computing device, the information to determine a computation configuration based on the obtained information, the computation configuration implementable by a compiler, said processing including evaluating at least the computation configuration based on a build cost model, the build cost model representative of a data transfer cost and a data efficiency of the computation configuration; and transmitting, by the computing device, instructions directing the compiler to implement the computation configuration.

    EXECUTING SHORT POINTER MODE APPLICATIONS
    4.
    发明申请

    公开(公告)号:US20190220281A1

    公开(公告)日:2019-07-18

    申请号:US16363018

    申请日:2019-03-25

    IPC分类号: G06F9/30 G06F9/34

    摘要: A short pointer mode application is loaded in an address space configured for use by a plurality of types of applications including the short pointer mode application and a long pointer mode application. The address space has a first portion addressable by short pointers of a defined size and a second portion addressable by long pointers of another defined size. The other defined size is different from the defined size. Based on executing the short pointer mode application, one or more short pointers of the short pointer mode application are converted to one or more long pointers; and the one or more long pointers are used to access memory within the first portion of the address space addressable by short pointers.

    Allocating register halves independently

    公开(公告)号:US09696975B2

    公开(公告)日:2017-07-04

    申请号:US12875753

    申请日:2010-09-03

    IPC分类号: G06F9/45

    CPC分类号: G06F8/441

    摘要: Register halves are allocated independently when performing register allocation during program compilation, thereby effectively doubling the number of registers which are available for allocation, which in turn may reduce spill code and improve run-time performance. When hardware registers are 64 bits wide, for example, an architecture supporting the present invention provides some number of separate hardware instructions that operate on the 32-bit high-word and/or the 32-bit low word of the hardware registers as if those 32-bit words are separate registers. Such hardware instructions are able to manipulate the register halves independently, leaving the other register half untouched. A register coloring algorithm using in the compilation process is invoked using the number of register halves, instead of the number of hardware registers.