Patents by Inventor Carsten Otte

Carsten Otte has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 12013773
    Abstract: An approach for generating a compiled version of a program source code. At least two different executable files may be generated applying at least two different compiler optimization settings for compiling a first part and applying at least two different compiler optimization settings for compiling a second part of the source code. A main performance part of the source code may be determined dependent on values of a target quantity of the at least two different executable files. The main performance part is the part of the first part and the second part that has a greater influence on the target quantity. The compiled version of the program source code may be generated by compiling the source code applying a higher optimization level of the compiler for compiling the main performance part than for compiling the remaining part of the source code.
    Type: Grant
    Filed: December 10, 2021
    Date of Patent: June 18, 2024
    Assignee: International Business Machines Corporation
    Inventors: Jana Christine Aberham, Christopher Noelting, Carsten Otte, Oleg Tsemaylo
  • Patent number: 11681567
    Abstract: The present disclosure relates to a method for a computer system comprising a plurality of processor cores including a first processor core and a second processor core, wherein a data item is exclusively assigned to the first processor core, of the plurality of processor cores, for executing an atomic primitive by the first processor core. The method includes receiving by the first processor core, from the second processor core, a request for accessing the data item, and in response to determining by the first processor core that the executing of the atomic primitive is not completed by the first processor core, returning a rejection message to the second processor core.
    Type: Grant
    Filed: May 9, 2019
    Date of Patent: June 20, 2023
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Ralf Winkelmann, Michael Fee, Matthias Klein, Carsten Otte, Edward W. Chencinski, Hanno Eichelberger
  • Publication number: 20230185693
    Abstract: The present disclosure relates to an approach for generating a compiled version of a program source code. At least two different executable files may be generated applying at least two different compiler optimization settings for compiling a first part and applying at least two different compiler optimization settings for compiling a second part of the source code. A main performance part of the source code may be determined dependent on values of a target quantity of the at least two different executable files. The main performance part is the part of the first part and the second part that has a greater influence on the target quantity. The compiled version of the program source code may be generated by compiling the source code applying a higher optimization level of the compiler for compiling the main performance part than for compiling the remaining part of the source code.
    Type: Application
    Filed: December 10, 2021
    Publication date: June 15, 2023
    Inventors: Jana Christine Aberham, Christopher Noelting, Carsten Otte, Oleg Tsemaylo
  • Patent number: 11444843
    Abstract: A computer-implemented method for simulating a system of at least two computing systems connected via at least one data packet connection, wherein a computing system comprises interconnect adapters for physical connections based on a physical layer protocol each. A packet switching component is provided, as are physical attachments for each interconnect adapter. The physical attachments are registered. A connection director is provided for managing the data packet exchange. In response to the receipt of a simulation start indicator, each physical attachment registers its unique address at the package switching component. This assigns unique identifiers for each computing system, and unique identifiers for simulated physical layer protocols.
    Type: Grant
    Filed: December 3, 2019
    Date of Patent: September 13, 2022
    Assignee: International Business Machines Corporation
    Inventors: Carsten Otte, Georg Drache, Joachim von Buttlar, Jens Mehler, Sebastian Stork
  • Patent number: 11321240
    Abstract: A method for processing an instruction by a processor operationally connected to one or more buses comprises determining the instruction is to access an address of an address space that maps a memory and comprises a range of MMIO addresses. The method determines the address being accessed is within the range of MMIO addresses and generates, based on the determination, a first translation of the address being accessed to a bus identifier identifying one of the buses and a bus address of a bus address space. The bus address resulting from the translation is assigned to a device accessible via the identified bus. The method generates an entry in a translation lookaside buffer. A request directed to the device is sent via the identified bus to the bus address resulting from the translation.
    Type: Grant
    Filed: June 8, 2018
    Date of Patent: May 3, 2022
    Assignee: International Business Machines Corporation
    Inventors: Christoph Raisch, Marco Kraemer, Carsten Otte, Jonathan D. Bradbury, David Craddock
  • Patent number: 11321146
    Abstract: The present disclosure relates to a method for a computer system comprising a plurality of processor cores, including a first processor core and a second processor core, wherein a cached data item is assigned to a first processor core, of the plurality of processor cores, for exclusively executing an atomic primitive. The method includes receiving, from a second processor core at a cache controller, a request for accessing the data item, and in response to determining that the execution of the atomic primitive is not completed by the first processor core, returning a rejection message to the second processor core.
    Type: Grant
    Filed: May 9, 2019
    Date of Patent: May 3, 2022
    Assignee: International Business Machines Corporation
    Inventors: Ralf Winkelmann, Michael Fee, Matthias Klein, Carsten Otte, Edward W. Chencinski, Hanno Eichelberger
  • Patent number: 11188379
    Abstract: Embodiments of the present invention disclose a method, computer program product, and system for processing a thread of execution on a plurality of independent processing cores. In various embodiments, a run state and a local maximum thermal power is assigned to each of at least part of the cores. A first one of the cores is set to the active state. The thread on the first core in the active state is processed. The processing of the thread on the first core for fulfilment of an interrupt condition is monitored. A second one of the cores is set to the active state. The processing of the thread on the first core is halted. The processing of the thread to the second core is transferred. The processing of the thread on the second core in the active state continues and the first core is set to the cooling state.
    Type: Grant
    Filed: September 21, 2018
    Date of Patent: November 30, 2021
    Assignee: International Business Machines Corporation
    Inventors: Marco Kraemer, Matteo Michel, Carsten Otte, Christoph Raisch
  • Patent number: 11055424
    Abstract: A cloud computing system includes a virtual server outputs non-encrypted data and receives encrypted data in response to receiving a write request signal and a read request signal. A hosting server hypervisor receives the write request signal and the read request signal. In response to receiving the write request signal the hosting server hypervisor writes encrypted data corresponding to the write request signal into a storage device. In response to receiving the read request signal the hosting server hypervisor obtains encrypted data corresponding to a data read request signal from the storage device and outputs the encrypted data. A secure channel sub-system is installed between the at least one virtual server and the hosting server hypervisor.
    Type: Grant
    Filed: December 12, 2018
    Date of Patent: July 6, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Christoph Vincent Schlameuss, Christoph Raisch, Carsten Otte, Marco Kraemer, Jakob Christopher Lang, Stefan Roscher
  • Publication number: 20210168041
    Abstract: A computer-implemented method for simulating a system of at least two computing systems connected via at least one data packet connection, wherein a computing system comprises interconnect adapters for physical connections based on a physical layer protocol each. A packet switching component is provided, as are physical attachments for each interconnect adapter. The physical attachments are registered. A connection director is provided for managing the data packet exchange. In response to the receipt of a simulation start indicator, each physical attachment registers its unique address at the package switching component. This assigns unique identifiers for each computing system, and unique identifiers for simulated physical layer protocols.
    Type: Application
    Filed: December 3, 2019
    Publication date: June 3, 2021
    Inventors: Carsten Otte, Georg Drache, Joachim von Buttlar, Jens Mehler, Sebastian Stork
  • Patent number: 10983707
    Abstract: Aspects include defining a first percentage of storage areas in an array of multiple persistent storage elements as hot storage areas and a second percentage of storage areas as spare storage areas such that remaining storage areas define a third percentage as cold storage areas. Each of the storage areas are assigned to either the hot group, the spare group or the cold group, respectively. A hot and cold storage area each include a first storage block on two different storage elements, and the hot storage area and the cold storage area each include a corresponding second storage block on a storage element different to the storage element on which the first respective storage block is stored. The storage blocks are distributed across the storage elements such that blocks of storage areas with the highest write rate of all storage areas are placed on a hottest storage element.
    Type: Grant
    Filed: October 28, 2019
    Date of Patent: April 20, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Marco Kraemer, Carsten Otte, Christoph Raisch
  • Patent number: 10929302
    Abstract: A method for processing an instruction by a processor operationally connected to one or more buses comprises determining the instruction is to access an address of an address space. The address space maps a memory and comprises a range of MMIO addresses. The method determines the address being accessed is within the range of MMIO addresses and translates, based on determining that the address being accessed is within the range of MMIO addresses, the address being accessed using a translation table to a bus identifier identifying one of the buses and a bus address of a bus address space. The bus address space is assigned to the identified bus. The bus address resulting from the translation is assigned to a device accessible via the identified bus. Based on the instruction a request directed to the device is sent via the identified bus to the bus address resulting from the translation.
    Type: Grant
    Filed: June 8, 2018
    Date of Patent: February 23, 2021
    Assignee: International Business Machines Corporation
    Inventors: Christoph Raisch, Marco Kraemer, Carsten Otte, Jonathan D. Bradbury, David Craddock
  • Patent number: 10911491
    Abstract: An aspect includes a computer system with a network encryption device and a trusted container within firmware or hardware and/or within a virtual machine running on the computer system. The network encryption device includes a key store for storing secret encryption keys and a network traffic encryption engine for negotiating and/or storing encryption keys in the key store and/or for encrypting and/or decrypting network traffic using the encryption keys from the key store. The trusted container includes a flow analyzer for analyzing network traffic received from the network encryption device.
    Type: Grant
    Filed: November 20, 2017
    Date of Patent: February 2, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Marco Kraemer, Hoang-Nam Nguyen, Carsten Otte, Christoph Raisch
  • Patent number: 10901910
    Abstract: The invention relates to a method for transferring data between a computer program executed by a processor and an input/output device using a memory accessible by the computer program and the input/output device. An operating system provides a trigger address range in a virtual address space assigned to the computer program. A page fault is caused by accessing the trigger address by the computer program. A page fault handler handling the page fault acquires information for identifying the data to be transferred using the trigger address. The acquired information is provided to the input/output device and the identified data is transferred between the memory and the input/output device.
    Type: Grant
    Filed: April 5, 2018
    Date of Patent: January 26, 2021
    Assignee: International Business Machines Corporation
    Inventors: Christoph Raisch, Carsten Otte, Matthias Brachmann, Marco Kraemer
  • Patent number: 10877992
    Abstract: Updating a database is provided. The updating is noticeable by all read and/or write processes. In response to a write request to the database, a temporary copy of the database is generated. The write operations are performed to the temporary copy of the database. The current database generation of the database is replaced with the temporary copy for creating a next database generation.
    Type: Grant
    Filed: November 30, 2017
    Date of Patent: December 29, 2020
    Assignee: International Business Machines Corporation
    Inventors: Jens Mehler, Florian Merkert, Carsten Otte, Stefan Usenbinz
  • Publication number: 20200356485
    Abstract: The present disclosure relates to a method for a computer system comprising a plurality of processor cores, wherein a cached data item is assigned to a first core of the processor cores for exclusively executing an atomic primitive by the first core. The method comprises, while the execution of the atomic primitive is not completed by the first core, receiving from a second core at a cache controller a request for accessing the data item. In response to determining that a second request of the data item is received from a third core, of the plurality of processor cores, before receiving the request of the second core, a rejection message may be returned to the second core.
    Type: Application
    Filed: May 9, 2019
    Publication date: November 12, 2020
    Inventors: Ralf Winkelmann, Michael Fee, Matthias Klein, Carsten Otte, Edward W. Chencinski, Hanno Eichelberger
  • Publication number: 20200356418
    Abstract: The present disclosure relates to a method for a computer system comprising a plurality of processor cores including a first processor core and a second processor core, wherein a data item is exclusively assigned to the first processor core, of the plurality of processor cores, for executing an atomic primitive by the first processor core. The method includes receiving by the first processor core, from the second processor core, a request for accessing the data item, and in response to determining by the first processor core that the executing of the atomic primitive is not completed by the first processor core, returning a rejection message to the second processor core.
    Type: Application
    Filed: May 9, 2019
    Publication date: November 12, 2020
    Inventors: Ralf Winkelmann, Michael Fee, Matthias Klein, Carsten Otte, Edward W. Chencinski, Hanno Eichelberger
  • Publication number: 20200356420
    Abstract: The present disclosure relates to a method for a computer system comprising a plurality of processor cores, including a first processor core and a second processor core, wherein a cached data item is assigned to a first processor core, of the plurality of processor cores, for exclusively executing an atomic primitive. The method includes receiving, from a second processor core at a cache controller, a request for accessing the data item, and in response to determining that the execution of the atomic primitive is not completed by the first processor core, returning a rejection message to the second processor core.
    Type: Application
    Filed: May 9, 2019
    Publication date: November 12, 2020
    Inventors: Ralf Winkelmann, Michael Fee, Matthias Klein, Carsten Otte, Edward W. Chencinski, Hanno Eichelberger
  • Publication number: 20200193039
    Abstract: A cloud computing system includes a virtual server outputs non-encrypted data and receives encrypted data in response to receiving a write request signal and a read request signal. A hosting server hypervisor receives the write request signal and the read request signal. In response to receiving the write request signal the hosting server hypervisor writes encrypted data corresponding to the write request signal into a storage device. In response to receiving the read request signal the hosting server hypervisor obtains encrypted data corresponding to a data read request signal from the storage device and outputs the encrypted data. A secure channel sub-system is installed between the at least one virtual server and the hosting server hypervisor.
    Type: Application
    Filed: December 12, 2018
    Publication date: June 18, 2020
    Inventors: Christoph Vincent Schlameuss, Christoph Raisch, Carsten Otte, Marco Kraemer, Jakob Christopher Lang, Stefan Roscher
  • Patent number: 10606759
    Abstract: A method is provided for providing access to a data block in a device of a processing system. The device is connected to a processor of the processing system via an extension bus, and the processing system includes a memory connected to the processor via a memory bus, an operating system and hardware and/or firmware components for controlling access to the device. The method includes adding by the operating system for the data block a first entry in a page table of the processing system. The added entry represents the data block. A memory management unit (MMU) of the processing system may receive a request of the data block. Upon receiving the request, the MMU may instruct one of the hardware or firmware components to provide access to the data block using the added entry.
    Type: Grant
    Filed: January 17, 2017
    Date of Patent: March 31, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Marco Kraemer, Carsten Otte, Christoph Raisch
  • Publication number: 20200097322
    Abstract: Embodiments of the present invention disclose a method, computer program product, and system for processing a thread of execution on a plurality of independent processing cores. In various embodiments, a run state and a local maximum thermal power is assigned to each of at least part of the cores. A first one of the cores is set to the active state. The thread on the first core in the active state is processed. The processing of the thread on the first core for fulfilment of an interrupt condition is monitored. A second one of the cores is set to the active state. The processing of the thread on the first core is halted. The processing of the thread to the second core is transferred. The processing of the thread on the second core in the active state continues and the first core is set to the cooling state.
    Type: Application
    Filed: September 21, 2018
    Publication date: March 26, 2020
    Inventors: Marco Kraemer, Matteo Michel, Carsten Otte, Christoph Raisch