Compile method for optimizing binary code, compiler system therefor, and computer program
    1.
    发明专利
    Compile method for optimizing binary code, compiler system therefor, and computer program 有权
    用于优化二进制代码的编译方法,编译器系统及其计算机程序

    公开(公告)号:JP2012038231A

    公开(公告)日:2012-02-23

    申请号:JP2010180043

    申请日:2010-08-11

    CPC classification number: G06F8/443

    Abstract: PROBLEM TO BE SOLVED: To replace memory accesses with register accesses in order to improve performance in computer resources.SOLUTION: Memory accesses to a stack area saving the values of respective registers are replaced with local variable accesses. On condition that SPs are not escaping, the memory accesses via the SPs which are not escaping are replaced with the local variable accesses. Call numbers are imparted to respective call instructions and in-lined codes in response to the in-lining of the codes to be called by the call instructions included in a binary code. When the SPs are escaping, the memory accesses belonging to the call numbers imparted to the instructions causing escaping and the ancestor call numbers of the call numbers are prohibited to be replaced with the local variable accesses among the memory accesses where the escaping SPs are defined as base addresses. In the meantime, the remaining memory accesses without prohibition are replaced with the local variable accesses.

    Abstract translation: 要解决的问题:使用寄存器访问替换存储器访问,以提高计算机资源的性能。

    解决方案:存储器访问堆栈区域,保存各个寄存器的值被替换为局部变量访问。 在SP没有转义的情况下,通过不转义的SP进行的存储器访问被替换为局部变量访问。 响应于包含在二进制代码中的呼叫指令要呼叫的代码的内联,呼叫号码被赋予相应的呼叫指令和内联的代码。 当SP转出时,属于呼叫号码的存储器访问,导致转义,并且呼叫号码的祖先呼叫号码被禁止替换为存储器访问之间的本地变量访问,其中转义的SP被定义为 基地址。 同时,没有禁止的剩余存储器访问被替换为局部变量访问。 版权所有(C)2012,JPO&INPIT

    Streamlining data processing optimizations for machine learning workloads

    公开(公告)号:AU2021285952A1

    公开(公告)日:2022-10-27

    申请号:AU2021285952

    申请日:2021-05-14

    Applicant: IBM

    Abstract: Techniques for refinement of data pipelines are provided. An original file of serialized objects is received, and an original pipeline comprising a plurality of transformations is identified based on the original file. A first computing cost is determined for a first transformation of the plurality of transformations. The first transformation is modified using a predefined optimization, and a second cost of the modified first transformation is determined. Upon determining that the second cost is lower than the first cost, the first transformation is replaced, in the original pipeline, with the optimized first transformation.

    VERARBEITEN VON STREAMING-DATEN MIT MEHREREN CACHES

    公开(公告)号:DE112019001744T5

    公开(公告)日:2021-03-04

    申请号:DE112019001744

    申请日:2019-06-06

    Applicant: IBM

    Abstract: Ein Computer stellt einen ersten Cachebereich und einen zweiten Cachebereich in einem Cache in einem Informationsverarbeitungssystem bereit, das eine Datenbankrepository und den Cache für die Datenbankrepository aufweist. Der Computer empfängt, in einem ersten Zeitfenster, Streaming-Daten und schreibt die Streaming-Daten in den ersten Cachebereich. Der Computer verhindert, in dem ersten Zeitfenster, das Durchführen einer Synchronisierung zwischen dem ersten Cachebereich und der Datenbankrepository. Der Computer ermöglicht, in mindestens einem Teil des ersten Zeitfensters, eine Synchronisierung zwischen der Datenbankrepository und dem zweiten Cachebereich. Der Computer ermöglicht, nach dem Ablauf des ersten Zeitfensters, eine Synchronisierung zwischen dem ersten Cachebereich und der Datenbankrepository.

    バイナリコードの実行を制御する装置及び方法

    公开(公告)号:JP2015179318A

    公开(公告)日:2015-10-08

    申请号:JP2014055409

    申请日:2014-03-18

    Applicant: IBM

    Abstract: 【課題】自己書き換えコード(SMC)による書き換えが発生したことによって変換バイナリコードの一部が使用できなくなった状態から復帰する処理のパフォーマンスを向上する。【解決手段】DBTのランタイム50では、SMC検出部51が、オリジナルバイナリコードのSMCによる書き換えの発生を検出し、トレース特定部54が、SMCによる書き換えの発生の検出に応じて、オリジナルバイナリコードを最適化して得られた最適化バイナリコードのSMCによる書き換えの影響を受けるトレースを特定し、トレース修正部55が、複数のスレッドのうちのこのトレースを実行したスレッドが例外を発生するようにこのトレースを修正し、スレッド実行制御部56が、例外が発生した際に、SMCにより書き換えられたオリジナルバイナリコードのトレースを、例外を発生したスレッドが実行するように制御する。【選択図】図6

    Method for supporting analysis of program, and computer program and computer system therefor
    5.
    发明专利
    Method for supporting analysis of program, and computer program and computer system therefor 有权
    支持程序分析的方法,计算机程序和计算机系统

    公开(公告)号:JP2010140434A

    公开(公告)日:2010-06-24

    申请号:JP2008318865

    申请日:2008-12-15

    CPC classification number: G06F8/40 G06F8/70

    Abstract: PROBLEM TO BE SOLVED: To provide a method for detecting a similar logic based on the context of a program, in order to solve the problem when a developer analyzes performance of the program, an expected result may not be obtained by analysis in units of method. SOLUTION: The method for supporting analysis of a program by grouping an algorithm contained in the program includes steps of: converting the algorithm into a directed graph; determining whether the converted directed graph is similar to a typical directed graph stored in a storage part 210 of a computer system; and determining, from groups stored in the storage part 210, a group to which the converted directed graph belongs. COPYRIGHT: (C)2010,JPO&INPIT

    Abstract translation: 要解决的问题:为了提供一种基于程序的上下文来检测类似逻辑的方法,为了在开发人员分析程序的性能时解决问题,预期结果可能不能通过在 方法单位。 解决方案:通过对包含在程序中的算法进行分组来支持程序分析的方法包括以下步骤:将算法转换成有向图; 确定所述转换的有向图是否类似于存储在计算机系统的存储部分210中的典型有向图; 以及从存储在存储部分210中的组确定转换的有向图所属的组。 版权所有(C)2010,JPO&INPIT

    Compiler, optimization method, compiler program and recording medium
    6.
    发明专利
    Compiler, optimization method, compiler program and recording medium 有权
    编译器,优化方法,编译程序和记录介质

    公开(公告)号:JP2005339021A

    公开(公告)日:2005-12-08

    申请号:JP2004154794

    申请日:2004-05-25

    CPC classification number: G06F8/4434

    Abstract: PROBLEM TO BE SOLVED: To effectively use instructions unique to an architecture.
    SOLUTION: A compiler comprises a target subprogram detection part for detecting a subprogram including instructions corresponding to all the instructions included in a pattern to be replaced, from a plurality of subprograms of a target program to be optimized, as a target subprogram to be optimized, an instruction sequence modification part for modifying instructions other than the instructions corresponding to the instructions included in the pattern to be replaced, and instructions different in execution dependency from the pattern to be replaced, in the target subprogram, such that the instructions included in the target subprogram match the pattern to be replaced in dependency, and an instruction sequence replacement part for replacing the target subprogram modified by the instruction sequence modification part with a replacement instruction sequence corresponding to the pattern to be replaced.
    COPYRIGHT: (C)2006,JPO&NCIPI

    Abstract translation: 要解决的问题:有效使用架构独特的指令。 解决方案:编译器包括目标子程序检测部分,用于从要优化的目标程序的多个子程序中检测包括与要替换的模式中包括的所有指令相对应的指令的子程序作为目标子程序, 被优化的指令序列修改部分,用于在目标子程序中修改与包括在待替换的模式中的指令相对应的指令之外的指令以及与要替换的模式的执行依赖性不同的指令,使得指令包括 在目标子程序中依赖性地匹配要替换的模式,以及指令序列替换部分,用于用与要替换的模式相对应的替换指令序列替换由指令序列修改部分修改的目标子程序。 版权所有(C)2006,JPO&NCIPI

    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.

    RATIONALISIEREN VON DATENVERARBEITUNGSOPTIMIERUNGEN FÜR ARBEITSLASTEN MIT MASCHINELLEM LERNEN

    公开(公告)号:DE112021001767T5

    公开(公告)日:2023-01-12

    申请号:DE112021001767

    申请日:2021-05-14

    Applicant: IBM

    Abstract: Bereitgestellt werden Methoden zur Verfeinerung von Daten-Pipelines. Eine ursprüngliche Datei von serialisierten Objekten wird empfangen, und eine ursprüngliche Pipeline, die eine Mehrzahl von Transformationen aufweist, wird auf Grundlage der ursprünglichen Datei identifiziert. Für eine erste Transformation der Mehrzahl von Transformationen werden erste Datenverarbeitungskosten ermittelt. Die erste Transformation wird unter Verwendung einer vordefinierten Optimierung modifiziert, und zweite Kosten der modifizierten ersten Transformation werden ermittelt. Wenn ermittelt wird, dass die zweiten Kosten niedriger als die ersten Kosten sind, wird die erste Transformation in der ursprünglichen Pipeline durch die optimierte erste Transformation ersetzt.

    Technique for replacing instruction string in program into higher-speed instruction
    9.
    发明专利
    Technique for replacing instruction string in program into higher-speed instruction 审中-公开
    将程序中的指令替换为高速指令的技术

    公开(公告)号:JP2008097249A

    公开(公告)日:2008-04-24

    申请号:JP2006277196

    申请日:2006-10-11

    CPC classification number: G06F8/445

    Abstract: PROBLEM TO BE SOLVED: To optimize for replacing an instruction string into an instruction allowed to be executed at a higher speed to programs of sorts more than before. SOLUTION: A compiler device for detecting a previously determined substitution target pattern having a plurality of instructions from a target program to be optimized and replacing the detected substitution target pattern into a substitution destination instruction string determined correspondingly to the substitution target pattern to optimize the target program is provided. The compiler device retrieves and stores a partial program including the substitution target pattern out of a plurality of partial programs included in the target program, deforms the stored target partial program so that an instruction to be executed before a condition branching instruction is moved to respective branched destinations of the condition branching instruction, makes dependence relation between instructions included in the target partial program coincide with the substitution target pattern, substitutes the deformed target partial program into a substitution destination instruction string determined correspondingly to the substitution target pattern, and outputs the substituted instruction string in a state of included in the optimized target program. COPYRIGHT: (C)2008,JPO&INPIT

    Abstract translation: 要解决的问题:优化将指令串替换为允许以更高速度执行的指令比以前更多的程序。 解决方案:一种编译器装置,用于检测具有来自要优化的目标程序的多条指令的先前确定的替换目标模式,并将检测到的替换目标模式替换为相应于替代目标模式确定的替代目标指令串,以优化 提供目标程序。 编译器装置从包括在目标程序中的多个部分程序中检索和存储包括替代目标模式的部分程序,使存储的目标部分程序变形,使得在条件分支指令之前要执行的指令移动到相应的分支 条件分支指令的目的地,使得包括在目标部分程序中的指令之间的依赖关系与替代目标模式一致,将变形的目标部分程序替换为对应于替换目标模式确定的替换目标指令串,并输出替代指令 字符串处于包含在优化目标程序中的状态。 版权所有(C)2008,JPO&INPIT

    Optimization compiler, compiler program, and recording medium
    10.
    发明专利
    Optimization compiler, compiler program, and recording medium 有权
    优化编译器,编译程序和记录介质

    公开(公告)号:JP2005107816A

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

    申请号:JP2003339666

    申请日:2003-09-30

    CPC classification number: G06F8/443

    Abstract: PROBLEM TO BE SOLVED: To efficiently optimize load instructions for reading out data from a memory.
    SOLUTION: In an object program of an optimization object, an optimization compiler optimizes the load instructions for reading out data from the memory. The optimization compiler comprises: a partial redundancy removal means for performing removal processing of partial redundancy, which does not cause spill processing, when variables are allocated to a register with respect to the load instructions for reading data in the variables from the memory; a reverse direction register detection means for detecting a space register, which is not allocated to any variables in an execution route arriving at the load instructions by retrieving an execution sequence from the instructions using the data read out by the load instructions; and a space register allocating means for allocating the space register detected by the reverse direction register detection means to the readout destination variables where the load instructions read out data.
    COPYRIGHT: (C)2005,JPO&NCIPI

    Abstract translation: 要解决的问题:有效地优化用于从存储器读出数据的加载指令。

    解决方案:在优化对象的对象程序中,优化编译器优化用于从存储器读取数据的加载指令。 所述优化编译器包括:部分冗余删除装置,用于当相对于从存储器读取变量中的数据的加载指令分配给寄存器时,执行不引起溢出处理的部分冗余的去除处理; 反向方向寄存器检测装置,用于检测空间寄存器,该空间寄存器未被分配给到达加载指令的执行路由中的任何变量,通过使用由加载指令读出的数据从指令中检索执行序列; 以及空间寄存器分配装置,用于将由反向寄存器检测装置检测的空间寄存器分配给读出的目标变量,其中加载指令读出数据。 版权所有(C)2005,JPO&NCIPI

Patent Agency Ranking