Patents by Inventor Marcel Apfelbaum

Marcel Apfelbaum 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).

  • Publication number: 20220201076
    Abstract: Data can be placed by an edge node in a computing environment using multiple criteria in a placement policy. For example, a processing device of an edge node can receive a write request for storing a data object. The processing device can select first and second criteria from a placement policy based on a tag for the data object. The first criterion may correspond to a required characteristic and the second criterion may correspond to a prioritized characteristic. The processing device can determine a set of remote components that fulfill the first criterion. The processing device can then identify, from the set, a destination component that fulfills the second criterion. The processing device can transmit the data object to the destination component.
    Type: Application
    Filed: December 22, 2020
    Publication date: June 23, 2022
    Inventors: Orit Wasserman, Marcel Apfelbaum
  • Publication number: 20220197700
    Abstract: A system includes a memory, a processor in communication with the memory, and an operating system (“OS”) executing on the processor. The processor belongs to a processor socket. The OS is configured to pin a workload of a plurality of workloads to the processor belonging to the processor socket. Each respective processor belonging to the processor socket shares a common last-level cache (“LLC”). The OS is also configured to measure an LLC occupancy for the workload, reserve the LLC occupancy for the workload thereby isolating the workload from other respective workloads of the plurality of workloads sharing the processor socket, and maintain isolation by monitoring the LLC occupancy for the workload.
    Type: Application
    Filed: December 17, 2020
    Publication date: June 23, 2022
    Inventors: Orit Wasserman, Marcel Apfelbaum
  • Patent number: 10956189
    Abstract: A method performed by a physical computing system includes, with a hypervisor, presenting a virtualized Remote Direct Memory Access (RDMA) device to a guest, with the hypervisor, allocating a portion of total guest memory to the guest, with the hypervisor, determining a memory threshold for the guest, the memory threshold being based on a number of virtual machines managed by the hypervisor and a size of total guest memory, with the hypervisor, receiving from the guest, a first request to register a first size sub-portion of the portion of total guest memory to the virtualized RDMA device, and with the hypervisor, in response to determining that the first size sub-portion exceeds the memory threshold, returning a notification to the guest, the notification indicating that the first request failed. The first size sub-portion is less than the portion of total guest memory.
    Type: Grant
    Filed: February 13, 2015
    Date of Patent: March 23, 2021
    Assignee: RED HAT ISRAEL, LTD.
    Inventors: Michael Tsirkin, Marcel Apfelbaum
  • Patent number: 10671419
    Abstract: A system and method of emulated input-output memory management units includes a management software associating a first device with a first input-output memory management unit having a first security designation, and associating a second device with a second input-output memory management unit having a second security designation different from the first security designation. A hypervisor constructs a table that describes associations between the plurality of devices and the plurality of input-output memory management units. The hypervisor provides the table to a guest virtual machine having a plurality of guest addresses including a first guest address and a second guest address. The first device accesses the first guest address through the first input-output memory management unit and the second device accesses the second guest address through the second input-output memory management unit.
    Type: Grant
    Filed: February 29, 2016
    Date of Patent: June 2, 2020
    Assignee: Red Hat Israel, Ltd.
    Inventors: Marcel Apfelbaum, Gal Hammer
  • Patent number: 10645051
    Abstract: Various examples are directed to systems and methods for utilizing a memory-mapped I/O channel. A first application may request that a message be sent to a channel counterparty. A message driver may receive from the first application the request to send the message, where the request comprises payload data from the message. The message driver may write a work request to a send queue of a first queue pair at the first memory location. An emulated channel adapter may poll a physical address at a memory device corresponding to the first memory location; determine that the work request is present at the send queue, and send the payload data to the channel counterparty.
    Type: Grant
    Filed: April 20, 2018
    Date of Patent: May 5, 2020
    Assignee: Red Hat Israel, Ltd.
    Inventors: Marcel Apfelbaum, Gal Hammer
  • Patent number: 10534742
    Abstract: A system and method for enabling hot-plugging of devices in virtualized systems. A hypervisor obtains respective values representing respective quantities of a resource for a plurality of virtual root buses of a virtual machine (VM). The hypervisor determines a first set of address ranges of the resource that are allocated for one or more virtual devices attached to at least one of the plurality of virtual root buses. The hypervisor determines, in view of the first set of allocated address ranges, a second set of address ranges of the resource available for attaching one or more additional virtual devices to at least one of the plurality of virtual root buses. The hypervisor assigns to the plurality of virtual root buses non-overlapping respective address ranges of the resource within the second set.
    Type: Grant
    Filed: October 23, 2018
    Date of Patent: January 14, 2020
    Assignee: RED HAT ISRAEL, LTD.
    Inventors: Marcel Apfelbaum, Michael Tsirkin
  • Patent number: 10481951
    Abstract: A system and method of device assignment includes receiving, by a supervisor, an assignment request to assign a device to a first application and a second application. The first application is associated with a first memory and has a first address. The second application is associated with a second memory and has a second address. The supervisor selects a first bus address offset and a second bus address offset, which is different from the first bus address offset. The supervisor sends, to the first application, the first bus address offset. The supervisor sends, to the second application, the second bus address offset. The supervisor updates a mapping to the first address to include the first bus address offset and updates a mapping to the second address to include the second bus address offset. The device is assigned to the first application and the second application.
    Type: Grant
    Filed: November 15, 2016
    Date of Patent: November 19, 2019
    Assignee: Red Hat Israel, Ltd.
    Inventors: Michael Tsirkin, Marcel Apfelbaum
  • Patent number: 10467078
    Abstract: An example method of providing a crash dump file upon a crash of a guest OS includes receiving, by a hypervisor, a notification that a guest OS running on a virtual machine has crashed. The notification is from the guest OS, and the virtual machine and the hypervisor run on a host machine. The method also includes in response to receiving the notification, writing, by the hypervisor, a crash dump file associated with the guest OS crash to a host file system of the host machine.
    Type: Grant
    Filed: May 18, 2017
    Date of Patent: November 5, 2019
    Assignee: Red Hat Israel, Ltd.
    Inventors: Gal Hammer, Marcel Apfelbaum
  • Patent number: 10467173
    Abstract: Some examples can enable virtual bridges to be hot plugged into a virtual Peripheral Component Interconnect (vPCI) system. For example, a number of subordinate buses that are connected to a vPCI bridge in the vPCI system can be determined. The vPCI system can be for a virtual machine. A parameter value can then be generated by adding an integer to the number of subordinate buses that are connected to the vPCI bridge. The integer can be a predefined number of additional subordinate buses to enable to be connected to the vPCI bridge. The parameter value can then be assigned to the vPCI bridge. This may enable additional virtual bridges to be hot plugged into the vPCI system at a later time. For example, a new virtual bridge can be added to the vPCI system using the parameter value for the vPCI bridge.
    Type: Grant
    Filed: December 13, 2017
    Date of Patent: November 5, 2019
    Assignee: Red Hat Israel, Ltd.
    Inventors: Gal Hammer, Marcel Apfelbaum
  • Patent number: 10402341
    Abstract: Inter-process data transfer on a host computing device is disclosed. A kernel module executing on the host computing device receives, from a first process, buffer registration information that identifies a virtual address of a receive buffer and a length of the receive buffer. The kernel module determines a first physical memory address that corresponds to the virtual address of the receive buffer. The kernel module receives, from a second process, a send request to send data to the first process, the send request including a virtual address of a send buffer, a length of the data, and a destination identifier that is associated with the receive buffer. The kernel module determines a second physical memory address that corresponds to the virtual address of the send buffer and transfers the data directly from the second physical memory address to the first physical memory address.
    Type: Grant
    Filed: May 10, 2017
    Date of Patent: September 3, 2019
    Assignee: Red Hat Israel, Ltd.
    Inventors: Marcel Apfelbaum, Gal Hammer
  • Publication number: 20190179788
    Abstract: Some examples can enable virtual bridges to be hot plugged into a virtual Peripheral Component Interconnect (vPCI) system. For example, a number of subordinate buses that are connected to a vPCI bridge in the vPCI system can be determined. The vPCI system can be for a virtual machine. A parameter value can then be generated by adding an integer to the number of subordinate buses that are connected to the vPCI bridge. The integer can be a predefined number of additional subordinate buses to enable to be connected to the vPCI bridge. The parameter value can then be assigned to the vPCI bridge. This may enable additional virtual bridges to be hot plugged into the vPCI system at a later time. For example, a new virtual bridge can be added to the vPCI system using the parameter value for the vPCI bridge.
    Type: Application
    Filed: December 13, 2017
    Publication date: June 13, 2019
    Inventors: Gal Hammer, Marcel Apfelbaum
  • Patent number: 10318460
    Abstract: A method includes determining a first host Non-Uniform Memory Access (NUMA) node of a plurality of host NUMA nodes on a host machine that provides a virtual machine to a guest, the first host NUMA node being associated with a pass-through device, creating a virtual NUMA node on the virtual machine, mapping the virtual NUMA node to the first host NUMA node, adding a virtual expander to a virtual root bus of the virtual machine, and associating the virtual expander with the virtual NUMA node.
    Type: Grant
    Filed: March 6, 2018
    Date of Patent: June 11, 2019
    Assignee: RED HAT ISRAEL, LTD.
    Inventors: Marcel Apfelbaum, Michael Tsirkin
  • Patent number: 10255198
    Abstract: Systems and methods for deferring registration for Direct Memory Access (DMA) operations. An example method comprises: receiving a memory region registration request identifying a memory region for a direct memory access (DMA) operation; generating a local key for the memory region; deferring registration of the memory region until receiving a DMA work request referencing the local key; and responsive to receiving the DMA work request, registering the memory region for DMA transfer.
    Type: Grant
    Filed: March 22, 2018
    Date of Patent: April 9, 2019
    Assignee: Red Hat Israel, Ltd.
    Inventors: Michael Tsirkin, Marcel Apfelbaum
  • Publication number: 20190057057
    Abstract: A system and method for enabling hot-plugging of devices in virtualized systems. A hypervisor obtains respective values representing respective quantities of a resource for a plurality of virtual root buses of a virtual machine (VM). The hypervisor determines a first set of address ranges of the resource that are allocated for one or more virtual devices attached to at least one of the plurality of virtual root buses. The hypervisor determines, in view of the first set of allocated address ranges, a second set of address ranges of the resource available for attaching one or more additional virtual devices to at least one of the plurality of virtual root buses. The hypervisor assigns to the plurality of virtual root buses non-overlapping respective address ranges of the resource within the second set.
    Type: Application
    Filed: October 23, 2018
    Publication date: February 21, 2019
    Inventors: Marcel Apfelbaum, Michael Tsirkin
  • Patent number: 10185679
    Abstract: A system and method of device assignment includes receiving an assignment request to assign a device to a plurality of guest virtual machines. The plurality of guest virtual machines includes a first guest virtual machine with a first guest memory having a first physical address and a second guest virtual machine with a second guest memory having a second physical address. The method includes selecting a first bus address offset and a second bus address offset different from the first bus address offset. The method includes sending, to the first guest virtual machine, the first bus address offset, and sending, to the second guest virtual machine, the second bus address offset. The method includes updating a mapping to the first physical address to include the first bus address offset, and updating a mapping to the second physical address to include the second bus address offset.
    Type: Grant
    Filed: February 24, 2016
    Date of Patent: January 22, 2019
    Assignee: Red Hat Israel, Ltd.
    Inventors: Michael Tsirkin, Marcel Apfelbaum
  • Patent number: 10157146
    Abstract: A processing device receives a first request from a virtual machine to register a memory region to a hardware device. The processing device generates a first key for the memory region, wherein the memory region is not registered to the hardware device. The processing device generates a second key for a shared memory pool that is pinned and registered to the hardware device. The processing device generates a mapping of the first key to the second key. The processing device sends a response to the virtual machine that the memory region has been registered to the hardware device, the notification comprising the first key.
    Type: Grant
    Filed: February 12, 2015
    Date of Patent: December 18, 2018
    Assignee: Red Hat Israel, Ltd.
    Inventors: Michael Tsirkin, Marcel Apfelbaum
  • Patent number: 10140218
    Abstract: Methods, systems, and computer program products for configuring devices in a virtual environment are described. An example method includes determining a NUMA node assigned to a virtual machine. A guest of the virtual machine probes a root bus to detect a first device coupled to the root bus. The first device is assigned, based on the determined NUMA node, a first address range of the virtual machine. The guest is notified of an expander coupled to the first virtual root bus. The expander is probed to detect an additional root bus. The guest probes the additional root bus to detect a second device. The second device is assigned, based on the determined NUMA node, a second address range.
    Type: Grant
    Filed: May 1, 2017
    Date of Patent: November 27, 2018
    Assignee: RED HAT ISRAEL, LTD.
    Inventors: Michael Tsirkin, Marcel Apfelbaum
  • Publication number: 20180336085
    Abstract: An example method of providing a crash dump file upon a crash of a guest OS includes receiving, by a hypervisor, a notification that a guest OS running on a virtual machine has crashed. The notification is from the guest OS, and the virtual machine and the hypervisor run on a host machine. The method also includes in response to receiving the notification, writing, by the hypervisor, a crash dump file associated with the guest OS crash to a host file system of the host machine.
    Type: Application
    Filed: May 18, 2017
    Publication date: November 22, 2018
    Inventors: Gal Hammer, Marcel Apfelbaum
  • Patent number: 10133699
    Abstract: A system and method for enabling hot-plugging of devices in virtualized systems. A hypervisor obtains respective values representing respective quantities of a resource for a plurality of virtual root buses of a virtual machine (VM). The hypervisor determines a first set of address ranges of the resource that are allocated for one or more virtual devices attached to at least one of the plurality of virtual root buses. The hypervisor determines, in view of the first set of allocated address ranges, a second set of address ranges of the resource available for attaching one or more additional virtual devices to at least one of the plurality of virtual root buses. The hypervisor assigns to the plurality of virtual root buses non-overlapping respective address ranges of the resource within the second set.
    Type: Grant
    Filed: August 5, 2016
    Date of Patent: November 20, 2018
    Assignee: RED HAT ISRAEL, LTD.
    Inventors: Marcel Apfelbaum, Michael Tsirkin
  • Publication number: 20180329828
    Abstract: Inter-process data transfer on a host computing device is disclosed. A kernel module executing on the host computing device receives, from a first process, buffer registration information that identifies a virtual address of a receive buffer and a length of the receive buffer. The kernel module determines a first physical memory address that corresponds to the virtual address of the receive buffer. The kernel module receives, from a second process, a send request to send data to the first process, the send request including a virtual address of a send buffer, a length of the data, and a destination identifier that is associated with the receive buffer. The kernel module determines a second physical memory address that corresponds to the virtual address of the send buffer and transfers the data directly from the second physical memory address to the first physical memory address.
    Type: Application
    Filed: May 10, 2017
    Publication date: November 15, 2018
    Inventors: Marcel Apfelbaum, Gal Hammer