会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
热词
    • 61. 发明申请
    • METHOD OF MEMORY MANAGEMENT FOR SERVER-SIDE SCRIPTING LANGUAGE RUNTIME SYSTEM
    • 服务器语言语言运行系统的内存管理方法
    • US20120110294A1
    • 2012-05-03
    • US13344687
    • 2012-01-06
    • Hiroshi InoueHideaki Komatsu
    • Hiroshi InoueHideaki Komatsu
    • G06F12/02
    • G06F12/0253
    • A method of memory management includes allocating a portion of a memory as a memory heap including a plurality of segments, each segment having a segment size; performing one or more memory allocations for objects in the memory heap; creating a free list array and class-size array in a metadata section of the memory heap, the class-size array being created such that each element of the size-class array is related a particular one of the plurality of segments and the free list array being created such that each element of the free list array is related to a different size class; and initializing the heap when it is determined that the heap may be destroyed, initializing including clearing the free list array.
    • 一种存储器管理方法包括将存储器的一部分分配为包括多个段的存储堆,每个段具有段大小; 对存储器堆中的对象执行一个或多个存储器分配; 在内存堆的元数据部分中创建自由列表数组和类大小数组,创建类大小数组,使得大小类数组的每个元素与多个片段中的特定片段和自由列表相关联 数组被创建,使得自由列表数组的每个元素与不同大小的类相关; 并且当确定堆可能被破坏时初始化堆,初始化包括清除空闲列表数组。
    • 62. 发明申请
    • CONTROLLING SIMULATION SYSTEMS
    • 控制仿真系统
    • US20120101791A1
    • 2012-04-26
    • US13246052
    • 2011-09-27
    • Hideaki KomatsuShingo NagaiFumitomo Ohsawa
    • Hideaki KomatsuShingo NagaiFumitomo Ohsawa
    • G06G7/48
    • G06F17/5009G05B17/02G06F17/5095
    • A method for controlling a simulation system includes storing first-stage and second stage tables in which a value of a predicted time until arrival of an I/O instruction and a type of the instruction are included as entries for each program counter of an instruction set simulator, and in which a value of an earliest time until an output event from a peripheral simulator is included as an entry for each type of instruction; looking up the first-stage table to obtain the type of the instruction and the value of the predicted time until arrival of the instruction, looking up the second-stage table with reference to the obtained type of the instruction to obtain the value of the earliest time until the output event from the peripheral simulator, and returning the predicted time until arrival of the instruction and the earliest time until the output event from the peripheral simulator.
    • 一种用于控制模拟系统的方法,包括存储第一级和第二级表,其中包括I / O指令的到达之前的预测时间的值和指令的类型作为指令集的每个程序计数器的条目 模拟器,并且其中包括来自外围模拟器的输出事件之前的最早时间的值作为每种类型的指令的条目; 查找第一级表以获得指令的类型和直到指令到达的预测时间的值,参考获得的指令类型来查找第二级表以获得最早的值 直到来自外围模拟器的输出事件为止,并返回直到指令到达为止的预测时间和最早的时间,直到来自外围模拟器的输出事件。
    • 63. 发明授权
    • Compiler register allocation and compilation
    • 编译器寄存器分配和编译
    • US08104026B2
    • 2012-01-24
    • US11927355
    • 2007-10-29
    • Akira KosekiHideaki Komatsu
    • Akira KosekiHideaki Komatsu
    • G06F9/44
    • G06F8/441
    • Assigns suitable registers to a plurality of variables. A compiler converts a source program into instructions for a processor having: a simultaneously used variable acquisition section which obtains, with respect to each of a plurality of variables used in the source program, some of the other variables used simultaneously with the variable; an allocation sequence generation section which generates a plurality of allocation sequences between the plurality of variables to allocate each variable to one of the plurality of registers different from those to which some of the other variables used simultaneously with the variable are allocated; an allocation priority acquisition section which obtains allocation priorities indicating to which one of the plurality of registers each variable is allocated with priority; and a register allocation section which allocates the variables to registers in accordance with an allocation sequence selected on the basis of the allocation priorities.
    • 将适当的寄存器分配给多个变量。 编译器将源程序转换为具有以下处理器的指令:具有:同时使用的变量获取部分,其针对源程序中使用的多个变量中的每一个获得与该变量同时使用的一些其它变量; 分配序列生成部,其生成所述多个变量之间的多个分配序列,以将每个变量分配给与所述变量同时使用的一些其他变量的多个寄存器中的一个不同的寄存器; 分配优先级获取部分,其优先级获得指示分配了多个寄存器中的每个变量的哪个寄存器的分配优先级; 以及寄存器分配部分,其根据基于分配优先级选择的分配序列将变量分配给寄存器。
    • 64. 发明授权
    • Compiler device, method, program and recording medium
    • 编译器装置,方法,程序和记录介质
    • US07979853B2
    • 2011-07-12
    • US12019446
    • 2008-01-24
    • Motohiro KawahitoHideaki Komatsu
    • Motohiro KawahitoHideaki Komatsu
    • G06F9/45
    • G06F8/41
    • Compiler device optimizes a program by changing an order of executing instructions. The device includes: a replaceability determination unit which determines whether a first instruction included in a first instruction sequence and a second instruction included in a second instruction sequence executed after the first instruction sequence can be replaced with a common processing instruction group including a common processing instruction for processing at least respective parts of processings by the first and second instructions together; a common processing instruction group generation unit which generates a common processing instruction group in the first instruction sequence, in place of the first instruction, when the replaceability determination unit determines the first and second instructions to be replaceable; and an instruction insertion unit which inserts the second instruction into a third instruction sequence that is an instruction sequence other than the first instruction sequence and is executed before the second instruction sequence.
    • 编译器设备通过更改执行指令的顺序来优化程序。 该装置包括:可替换性确定单元,其确定包括在第一指令序列中的第一指令和包括在第一指令序列之后执行的第二指令序列中的第二指令是否可以被包括公共处理指令的公共处理指令组替换 用于通过第一和第二指令一起处理至少相应的处理部分; 当可替换性确定单元确定可替换的第一和第二指令时,代替第一指令,生成第一指令序列中的公共处理指令组的公共处理指令组生成单元; 以及指令插入单元,其将第二指令插入作为第一指令序列以外的指令序列的第三指令序列,并且在第二指令序列之前执行。
    • 67. 发明申请
    • METHOD OF REDUCING LOGGING CODE IN A COMPUTING SYSTEM
    • 降低计算系统中记录码的方法
    • US20100005457A1
    • 2010-01-07
    • US12168206
    • 2008-07-07
    • Hideaki KomatsuTakuya NakaikeRei Odaira
    • Hideaki KomatsuTakuya NakaikeRei Odaira
    • G06F9/45
    • G06F8/4435G06F8/443
    • A computing system for reducing logging code includes a virtual machine configured to control the flow of operations in the computing system and a compiler configured to receive bytecode instructions from the virtual machine and convert the bytecode instructions into machine instructions. The computing system also includes a compilation store configured to receive and store the machine instructions from the compiler and a recompilation store configured to receive and store recompiled machine instructions from the compiler. The system also includes a software transactional memory engine configured to receive instructions from the compilation store or, in the event that the recompilation store has recompiled machine instructions stored therein, from the recompilation store.
    • 用于减少日志记录代码的计算系统包括配置成控制计算系统中的操作流的虚拟机以及被配置为从虚拟机接收字节码指令并将该字节代码指令转换为机器指令的编译器。 计算系统还包括配置存储器,其被配置为从编译器接收和存储机器指令,并且重新编译存储器被配置为从编译器接收和存储重新编译的机器指令。 该系统还包括被配置为从重新编译存储器接收来自编译存储器的指令的软件事务内存引擎,或者在重新编译存储器已经重新编译存储在其中的机器指令的情况下。
    • 68. 发明申请
    • COMPILER FOR OPTIMIZING PROGRAM
    • 编译器优化程序
    • US20090119654A1
    • 2009-05-07
    • US12259746
    • 2008-10-28
    • Motohiro KawahitoHideaki KomatsuTakao Moriyama
    • Motohiro KawahitoHideaki KomatsuTakao Moriyama
    • G06F9/45
    • G06F8/443G06F8/4435
    • A compiler system and method for calculating a value to be assigned to a variable for optimizing a program. The apparatus includes a subrange analysis unit for analyzing, for an instruction to assign a value to a variable in the program, a range of the value being assignable to the variable by the instruction, as a subrange of the variable in a case where instruction is executed; a determination unit for determining if the execution result of the program changes if the instruction assigns any value in the subrange of the variable to the variable on the basis of the analyzed subrange of the variable; and a replacement unit for replacing the instruction to assign the value to the variable with an instruction to assign a constant value in the subrange of the variable to the variable.
    • 用于计算要分配给用于优化程序的变量的值的编译器系统和方法。 该装置包括一个子范围分析单元,用于对于在程序中的变量分配值的指令,分析指令中可变量值的范围,作为在指令为 执行 确定单元,用于如果所述指令基于所分析的所述变量的子范围将所述变量的子范围中的任何值分配给所述变量,则确定所述程序的执行结果是否改变; 以及替换单元,用于用指令将变量的子范围中的常数值分配给变量来替换指定给变量的指令。
    • 69. 发明授权
    • Preprocessor to improve the performance of message-passing-based parallel programs on virtualized multi-core processors
    • 预处理器可以提高虚拟化多核处理器上基于消息传递的并行程序的性能
    • US07503039B2
    • 2009-03-10
    • US11463496
    • 2006-08-09
    • Hiroshi InoueHideaki KomatsuTakao MoriyamaMoriyoshi OharaYukihiko Sohda
    • Hiroshi InoueHideaki KomatsuTakao MoriyamaMoriyoshi OharaYukihiko Sohda
    • G06F9/45G06F9/46
    • G06F8/45
    • Provided is a complier which optimizes parallel processing. The complier records the number of execution cores, which is the number of processor cores that execute a target program. First, the compiler detects a dominant path, which is a candidate of an execution path to be consecutively executed by a single processor core, from a target program. Subsequently, the compiler selects dominant paths with the number not larger than the number of execution cores, and generates clusters of tasks to be executed by a multi-core processor in parallel or consecutively. After that, the compiler computes an execution time for which each of the generated clusters is executed by the processor cores with the number equal to one or each of a plurality natural numbers selected from the natural numbers not larger than the number of execution cores. Then, the compiler selects the number of processor cores to be assigned for execution of each of the clusters based on the computed execution time.
    • 提供了优化并行处理的编译器。 编译器记录执行核心数量,即执行目标程序的处理器核心数。 首先,编译器从目标程序检测作为由单个处理器核心连续执行的执行路径的候选者的主路径。 随后,编译器选择不大于执行核心数量的主导路径,并且并行或连续地生成由多核处理器执行的任务集群。 之后,编译器计算执行时间,其中每个生成的集群由处理器核执行,数量等于从不大于执行核心数的自然数中选择的多个自然数中的一个或每个。 然后,编译器基于计算出的执行时间选择要分配用于每个簇的执行的处理器核心的数量。
    • 70. 发明申请
    • TECHNIQUE FOR ALLOCATING REGISTER TO VARIABLE FOR COMPILING
    • 将注册分配给可编辑的变更技术
    • US20090064112A1
    • 2009-03-05
    • US12133349
    • 2008-06-04
    • Tatsushi InagakiHideaki KomatsuTakuya NakaikeRei Odaira
    • Tatsushi InagakiHideaki KomatsuTakuya NakaikeRei Odaira
    • G06F9/45
    • G06F8/441
    • The present invention relates to allocating registers to variables in order to compile a program. In an embodiment of the present invention a compiler apparatus stores interference information indicating an interference relationship between variables, selects a register and allocates the register to each variables in accordance with a predetermined procedure, without allocating the same register to a set of variables having interference relationships. The compiler further replaces multiple variables having the same register allocated thereto with a new variable and generates an interference relationship by merging the interference relationships each concerning one of multiple variables. The compiler further updates interference information according to the generated interference relationship and allocates to each variable in the program using the new variable a register, selected in accordance with the predetermined procedure without allocating the same register to a set of variables having the interference relationships, based on the updated interference information.
    • 本发明涉及向变量分配寄存器以便编译程序。 在本发明的实施例中,编译装置存储指示变量之间的干扰关系的干扰信息,选择寄存器并根据预定的过程将寄存器分配给每个变量,而不向具有干扰关系的一组变量分配相同的寄存器 。 编译器进一步用新的变量代替具有与其分配的相同寄存器的多个变量,并且通过合并关于多个变量之一的干扰关系来产生干扰关系。 编译器根据产生的干扰关系进一步更新干扰信息,并使用新的变量将根据预定过程选择的寄存器分配给程序中的每个变量,而不将相同的寄存器分配给具有干扰关系的一组变量, 关于更新的干扰信息。