COMPILER, COMPUTER SYSTEM, OPTIMIZATION METHOD, OPTIMIZING PROGRAM, STORAGE MEDIUM AND PROGRAM TRANSMITTER

    公开(公告)号:JP2001290655A

    公开(公告)日:2001-10-19

    申请号:JP2000105468

    申请日:2000-04-06

    Applicant: IBM

    Abstract: PROBLEM TO BE SOLVED: To improve an effect of data flow optimizing processing without explosively increasing a code quantity, while defining a program in which a plurality of branchings and joinings are serially arrayed as an object. SOLUTION: This device is provided with an optimizing processing executing part 13 for applying data flow optimizing processing to a program, an optimizing object path determining part and a control flow graph deforming part 12 for deforming the program of a processing object into form suited to this optimizing processing, before optimizing processing by means of this optimizing processing executing part 13. When this program has branching, these optimizing object path determining part 11 and control flow graph deforming part 12 extract a series of paths having no merging with respect to this branching by selecting a specified path in this branching, and this optimizing processing executing part 13 applies optimizing processing to the paths extracted by the optimizing object path determining part 11 and the control flow graph deforming part 12.

    DEVICE AND METHOD FOR EXECUTING BYTE CODE

    公开(公告)号:JP2001084146A

    公开(公告)日:2001-03-30

    申请号:JP24317699

    申请日:1999-08-30

    Applicant: IBM

    Abstract: PROBLEM TO BE SOLVED: To successively quickly execute a Java byte code or the like. SOLUTION: An interpreter 326 prepares n pieces of processing routines corresponding to n bytes included in the word of a CPU, and reuses a byte code loaded for processing a certain processing routine for the following processing routines, and minimizes the number of times that the CPU loads the byte code. Moreover, the interpreter 326 speculatively decodes the candidate of the the second byte code ahead by using the dead pipe line of the CPU for masking any overhead generated at the time of decoding the byte code.

    DYNAMICALLY COMPILING TIME SETTING METHOD, BYTE CODE EXECUTING MODE SELECTING METHOD AND COMPUTER

    公开(公告)号:JP2000222220A

    公开(公告)日:2000-08-11

    申请号:JP1933599

    申请日:1999-01-28

    Applicant: IBM

    Abstract: PROBLEM TO BE SOLVED: To efficiently execute a byte code by combining an interpreter and a compiler. SOLUTION: In the case where an instruction to execute is a backward condition branching instruction in executing a byte code by the interpreter, whether the condition branching instruction is the back edge of a loop or not is judge S2. In the case where it is judged to be the back edge of the loop, the number of the times of the loop is predicted S3 and the predicted number of the times of the loop is stored in a storing device. According to the predicted number of the times of the loop, the execution mode of the byte code is selected S4. This execution mode includes a mode to immediately compile a method including the loop and a mode to execute the byte code by the interpreter.

    DECENTRALIZED PROCESSING CONTROL METHOD AND DECENTRALIZED PROCESSING SYSTEM

    公开(公告)号:JPH07230429A

    公开(公告)日:1995-08-29

    申请号:JP1917794

    申请日:1994-02-16

    Applicant: IBM JAPAN

    Abstract: PURPOSE:To reduce the overhead accompanying a data communication and efficiently execute a program. CONSTITUTION:One processor where data have arrived is selected (310-312) by polling. All the arrival data are received from the selected processor and done marks are given to a data management table and a set management table (314-316). The corresponding data are sent and done marks are given to the data management table (318--320). When the data do not arrive yet by polling, necessary data are sent to all processors (322). The actual calculation of an array processing is performed by using a calculation set and a done mark is given to the set management table; and the processing is repeated (324--328) until an 'all calculation done' state wherein there is no received and uncalculated calculation set is entered.

    Parallelization method, system, and program
    65.
    发明专利
    Parallelization method, system, and program 有权
    并行化方法,系统和程序

    公开(公告)号:JP2011170732A

    公开(公告)日:2011-09-01

    申请号:JP2010035691

    申请日:2010-02-22

    CPC classification number: G06F8/456

    Abstract: PROBLEM TO BE SOLVED: To accelerate execution of a program by parallelization in a simulation system. SOLUTION: A functional block is divided into strands, and a strand with the largest calculation time is found from a strand set (a step 604). In the strand with the largest calculation time, a movable block is found (a step 606), the calculation time of the strand as a result of moving to a strand in an input direction or an output direction according to nature of the movable block, and moving of the block between strands in which reduction of calculation time with an original strand becomes maximum is performed (a step 614). Thus, processing returns to a step of finding a strand with the largest calculation time. When it reaches a state where the calculation time of the block no longer decreases even when the movable block is moved (a step 612), the processing is ended. The strand of the functional block obtained in this way is converted into a corresponding source code such as C, and is further complied to be assigned to an individual core or an individual processor in order to execute it. COPYRIGHT: (C)2011,JPO&INPIT

    Abstract translation: 要解决的问题:通过仿真系统中的并行化来加速程序的执行。 解决方案:功能块被划分为股线,并且从股线组发现具有最大计算时间的股线(步骤604)。 在具有最大计算时间的股线中,发现可动块(步骤606),根据可移动块的性质,由于沿输入方向或输出方向移动到股线的结果,股线的计算时间, 并且执行块之间的块与原始链的减少计算时间变为最大的步骤(步骤614)。 因此,处理返回到找到具有最大计算时间的线的步骤。 当达到即使可移动块移动时块的计算时间也不再减小的状态(步骤612),处理结束。 以这种方式获得的功能块的链转换成相应的源代码,例如C,并且进一步被指定为分配给单独的核或单个处理器以执行它。 版权所有(C)2011,JPO&INPIT

    Application generation system, method, and program
    66.
    发明专利
    Application generation system, method, and program 有权
    应用生成系统,方法和程序

    公开(公告)号:JP2011113449A

    公开(公告)日:2011-06-09

    申请号:JP2009271308

    申请日:2009-11-30

    CPC classification number: G06F8/4441

    Abstract: PROBLEM TO BE SOLVED: To provide a code generation technology can generate an executable code optimized as much as possible regarding resource utilization and execution speed, on hybrid systems comprising a plurality of computer systems which can be connected to one another via a network.
    SOLUTION: An optimized executable code is generated by the processing of generating an optimization table about library components of a source code, automatic computing resource assignment using the resultant optimization table, and the execution of network embedding for hybrid systems which are connected to one another via the network.
    COPYRIGHT: (C)2011,JPO&INPIT

    Abstract translation: 要解决的问题:为了提供代码生成技术,可以在包括可以经由网络彼此连接的多个计算机系统的混合系统上生成尽可能优化的关于资源利用和执行速度的可执行代码 。 解决方案:通过处理生成关于源代码的库组件的优化表,使用所得到的优化表的自动计算资源分配以及用于混合系统的网络嵌入的执行来生成优化的可执行代码 彼此通过网络。 版权所有(C)2011,JPO&INPIT

    Parallelization processing method, system and program
    67.
    发明专利
    Parallelization processing method, system and program 有权
    并行处理方法,系统与程序

    公开(公告)号:JP2011081539A

    公开(公告)日:2011-04-21

    申请号:JP2009232369

    申请日:2009-10-06

    CPC classification number: G06F8/456

    Abstract: PROBLEM TO BE SOLVED: To provide a parallelization technology capable of taking an advantage of parallelism in strongly-connected components and enabling a high-speed operation. SOLUTION: A unified parallelization table is formed in steps of: describing a process to be executed with a plurality of control blocks and edges connecting the control blocks; selecting highly predictable edges from the edges; identifying strongly-connected clusters; creating a graph composed of parallelization tables 1102 to 1116 having entries of the number of processors, costs thereof, and corresponding clusters for each node in the strongly-connected clusters and a non-strongly connected cluster between the strongly-connected clusters; converting the graph into a series-parallel graph; and merging the graph at each serial path and at each parallel section. Then, based on the number of processors and a cost value in the unified parallelization table, the best entry is selected and an executable code to be allocated to each processor is generated based on the cluster of that entry. COPYRIGHT: (C)2011,JPO&INPIT

    Abstract translation: 要解决的问题:提供一种并行技术,其能够在强连接的部件中具有并行性的优点并且能够进行高速操作。 解决方案:统一的并行表形成步骤:描述要连接控制块的多个控制块和边缘执行的过程; 从边缘选择高度可预测的边缘; 识别强连接的群集; 创建由并行化表1102至1116组成的图,其具有处理器数量,其成本以及强连接群集中的每个节点的对应簇以及强连接群集之间的非强连接簇; 将图形转换成串并行图; 并在每个串行路径和每个并行段合并图形。 然后,基于处理器的数量和统一并行化表中的成本值,选择最佳条目,并且基于该条目的集群生成要分配给每个处理器的可执行代码。 版权所有(C)2011,JPO&INPIT

    Simulation system, method, and program
    68.
    发明专利
    Simulation system, method, and program 有权
    模拟系统,方法和程序

    公开(公告)号:JP2010282291A

    公开(公告)日:2010-12-16

    申请号:JP2009133329

    申请日:2009-06-02

    CPC classification number: G06F17/5009 G06F17/5095

    Abstract: PROBLEM TO BE SOLVED: To provide a technology for retrying simulation at a relatively low cost when speculative input and actual input are different from each other. SOLUTION: A prefetch dispatcher 806 monitors an input state at an entry point, and calls an adaptive execution module 814 if the input state is stable. The adaptive execution module 814 processes multiple time stamps at once. The prefetch dispatcher 806 calls a recovery execution module 818 in response to a discrete system receiving an input event. The recovery execution module 818 restarts processing based on the input event, the time stamp, and a value stored in a state vector. COPYRIGHT: (C)2011,JPO&INPIT

    Abstract translation: 要解决的问题:当投机输入和实际输入彼此不同时,提供以相对低的成本重试仿真的技术。 解决方案:预取调度器806监视入口点处的输入状态,并且如果输入状态稳定,则调用自适应执行模块814。 自适应执行模块814一次处理多个时间戳。 响应于接收输入事件的离散系统,预取调度器806调用恢复执行模块818。 恢复执行模块818基于输入事件,时间戳和存储在状态向量中的值来重新开始处理。 版权所有(C)2011,JPO&INPIT

    Compiler for optimizing program
    69.
    发明专利
    Compiler for optimizing program 有权
    编译器优化程序

    公开(公告)号:JP2009110299A

    公开(公告)日:2009-05-21

    申请号:JP2007282322

    申请日:2007-10-30

    CPC classification number: G06F8/443 G06F8/4435

    Abstract: PROBLEM TO BE SOLVED: To optimize a process calculating a value to be assigned to a variable. SOLUTION: A compiler apparatus for optimizing a program includes: a range analysis unit for analyzing a range of a value assignable to the variable by the instruction, as a range of the variable in the case where the instruction is executed in terms of an instruction to assign a value to a variable in the program; a determination unit for determining if the execution result of the program does not change even if the instruction assigns any value in the range of the variable on the basis of the analyzed range 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 range of the variable to the variable on condition that the determination by the determination unit is formed. COPYRIGHT: (C)2009,JPO&INPIT

    Abstract translation: 要解决的问题:优化计算要分配给变量的值的过程。 解决方案:用于优化程序的编译装置包括:范围分析单元,用于通过指令分析可分配给该变量的值的范围,作为在执行指令的情况下的变量的范围 为程序中的变量分配值的指令; 确定单元,用于确定程序的执行结果是否不改变,即使该指令基于变量的分析范围分配变量范围中的任何值; 以及替换单元,用于在形成由确定单元的确定的条件下,用用于将变量的范围中的常数值分配给变量的指令来替换指定值以赋值给变量的指令。 版权所有(C)2009,JPO&INPIT

    System and method for controlling access to database
    70.
    发明专利
    System and method for controlling access to database 有权
    用于控制访问数据库的系统和方法

    公开(公告)号:JP2007066017A

    公开(公告)日:2007-03-15

    申请号:JP2005251594

    申请日:2005-08-31

    CPC classification number: G06F17/30395 G06F17/30454 Y10S707/99933

    Abstract: PROBLEM TO BE SOLVED: To furthermore improve the efficiency of access to a database. SOLUTION: A system for controlling access to the database is provided with: an acquisition part for acquiring an access program including a plurality of access instructions to the database; a detection part for detecting a plurality of mutually different tables to be accessed by the plurality of access instructions; a combination control part for executing a combination instruction for acquiring a result table obtained by combining the plurality of detected tables from the database prior to the execution of the plurality of access instructions; and a conversion control part for executing a conversion instruction for extracting records accessed by the plurality of access instructions from the result table and converting the extracted records into structure allowed to be accessed by the plurality of access instructions prior to the execution of the plurality of access instructions. COPYRIGHT: (C)2007,JPO&INPIT

    Abstract translation: 要解决的问题:进一步提高访问数据库的效率。 解决方案:用于控制对数据库的访问的系统提供有:获取部分,用于获取包括对数据库的多个访问指令的访问程序; 检测部,用于检测由所述多个访问指令访问的多个相互不同的表; 组合控制部分,用于执行用于获取通过在执行所述多个访问指令之前从所述数据库组合所述多个检测表而获得的结果表的组合指令; 以及转换控制部分,用于执行用于从结果表中提取由多个访问指令访问的记录的转换指令,并且将所提取的记录转换为在执行多个访问之前由多个访问指令允许访问的结构 说明。 版权所有(C)2007,JPO&INPIT

Patent Agency Ranking