Patents by Inventor David Keppel

David Keppel 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: 20240126440
    Abstract: Various examples relate to a method, apparatus, device and computer program for a first entity, to a method, apparatus, device and computer program for a second entity, to the first and second entity, and to a system comprising the first and second entity. Some aspects of the present disclosure relate to a method for a first entity for data buffering of write operations performed by a second entity comprises providing a limited-space data buffer comprising a plurality of slots for storing data provided by the second entity, processing the data stored in the slots of the limited-space data buffer, updating a read indicator based on the processing of the data, and providing a copy of the read indicator to the second entity according to a pre-defined criterion.
    Type: Application
    Filed: June 30, 2023
    Publication date: April 18, 2024
    Inventors: Lawrence STEWART, David KEPPEL
  • Publication number: 20240126680
    Abstract: Various examples relate to apparatuses, devices, methods and computer programs for allocating memory. An apparatus comprises interface circuitry, machine-readable instructions, and processor circuitry to execute the machine-readable instructions to process instructions of a software application of a local processing element participating in a partitioned global address space, allocate, upon processing an instruction for allocating memory on a symmetric heap being used across a plurality of processing elements participating in the partitioned global address space, memory on the symmetric heap, wherein, if the instruction for allocating memory indicates that memory is to be allocated with a variable size, the memory allocated on the symmetric heap has a size that is specific for the local processing element.
    Type: Application
    Filed: December 21, 2023
    Publication date: April 18, 2024
    Inventors: David KEPPEL, David OZOG, Lawrence STEWART, Sri Raj PAUL, Md RAHMAN
  • Publication number: 20220201103
    Abstract: Examples described herein relate to coalescing one or more messages into a coalesced message and representing one or more fields of the metadata of the one or more messages using one or more codes, wherein at least one of the one or more codes uses fewer bits than that of original metadata fields to compact the metadata fields. In some examples, the metadata includes at least one or more of: a target processing element (PE) number or identifier, message length, operation to perform, target address where to read or write data, source PE number or identifier, initiator address in which to write result data, or message identifier.
    Type: Application
    Filed: March 9, 2022
    Publication date: June 23, 2022
    Inventors: David KEPPEL, Chitra NATARAJAN, Venkata KRISHNAN
  • Publication number: 20220107897
    Abstract: Examples described herein relate to circuitry to selectively disable cache snoop operations issued by a particular processor or its cache manager based on data in a memory address range, to be accessed by the particular processor, having been flushed from one or more other cache devices accessible to other processors. At or after completion of flushing or scrubbing data in the memory address range to memory, the particular processor or its cache manager do not issue snoop operations for accesses to the memory address range. In response to an access by some other device to the memory address range, the processor or cache manager may resume issuing snoop operations.
    Type: Application
    Filed: December 15, 2021
    Publication date: April 7, 2022
    Inventors: David KEPPEL, Swapna RAJ, Kermin CHOFLEMING, Samantika S. SURY
  • Publication number: 20220011966
    Abstract: Methods and apparatus for reduced network load with receiver-managed offset (RMO) PUT or GET messages. An RMO PUT message including an RMO key, data, and a length is sent from an initiator to a target, where the RMO key is extracted by a Network Interface controller (NIC), SmartNIC, or Infrastructure Processing Unit and used to identify an address or address offset of a memory buffer in a target memory at which to write the data. An RMO GET message is sent from an initiator to a target and includes an RMO key, a source buffer on the target, and a length. The target processes the RMO GET, reads the length of data from its source buffer, and returns a message to the initiator including the RMO key, the read data, and the length. The RMO key is extracted and used to identify an address or address offset of a memory buffer in a memory on the initiator in which to write the read data.
    Type: Application
    Filed: September 24, 2021
    Publication date: January 13, 2022
    Inventors: David KEPPEL, David M. OZOG
  • Publication number: 20210228313
    Abstract: A surgical drape, configured for in situ deployment on a patient, includes a panel having an outer surface and an inner surface; a fenestration centrally located in and extending through the panel; and an antenna connected to the panel, wherein the antenna surrounds the fenestration.
    Type: Application
    Filed: January 27, 2021
    Publication date: July 29, 2021
    Inventors: Allan G. Aquino, David Keppel, Andy Buersmeyer, Richard L. Croft
  • Patent number: 10771404
    Abstract: Particular embodiments described herein provide for a network element that can be configured to receive a request message, wherein the request message includes a read trigger, an indicator selector, and a completion trigger, determine an indicator that relates to the indicator selector, and perform an action when the read trigger is activated.
    Type: Grant
    Filed: December 22, 2016
    Date of Patent: September 8, 2020
    Assignee: Intel Corporation
    Inventors: David Keppel, Thomas D. Lovett, Michael A. Parker, Robert C. Zak, Jr.
  • Publication number: 20200233814
    Abstract: Examples described herein relate to a computing system supporting custom page sized ranges for an application to map contiguous memory regions instead of many smaller sized pages. An application can request a custom range size. An operating system can allocate a contiguous physical memory region to a virtual address range by specifying a custom range sizes that are larger or smaller than the normal general page sizes. Virtual-to-physical address translation can occur using an address range circuitry and translation lookaside buffer in parallel. The address range circuitry can determine if a custom entry is available to use to identify a physical address translation for the virtual address. Physical address translation can be performed by transforming the virtual address in some examples.
    Type: Application
    Filed: February 10, 2020
    Publication date: July 23, 2020
    Inventors: Farah E. FARGO, Mitchell DIAMOND, David KEPPEL, Samantika S. SURY, Binh PHAM, Shobha VISSAPRAGADA
  • Patent number: 10409763
    Abstract: Various different embodiments of the invention are described including: (1) a method and apparatus for intelligently allocating threads within a binary translation system; (2) data cache way prediction guided by binary translation code morphing software; (3) fast interpreter hardware support on the data-side; (4) out-of-order retirement; (5) decoupled load retirement in an atomic OOO processor; (6) handling transactional and atomic memory in an out-of-order binary translation based processor; and (7) speculative memory management in a binary translation based out of order processor.
    Type: Grant
    Filed: June 30, 2014
    Date of Patent: September 10, 2019
    Assignee: INTEL CORPORATION
    Inventors: Patrick P. Lai, Ethan Schuchman, David Keppel, Denis M. Khartikov, Polychronis Xekalakis, Joshua B. Fryman, Allan D. Knies, Naveen Neelakantam, Gregor Stellpflug, John H. Kelm, Mirem Hyuseinova Seidahmedova, Demos Pavlou, Jaroslaw Topp
  • Patent number: 10331550
    Abstract: This disclosure describes, in one embodiment an apparatus. The apparatus includes a processor; a memory, an application, collector circuitry and aggregator circuitry. The memory is to store one or more tasks. The application is associated with the one or more tasks. The collector circuitry is to identify a local free address range in at least one address space. The aggregator circuitry is to provide address range data to a subgroup aggregator. The provided address range data includes at least one local free address range.
    Type: Grant
    Filed: September 30, 2016
    Date of Patent: June 25, 2019
    Assignee: Intel Corporation
    Inventors: David Keppel, Charles J. Archer
  • Patent number: 10200310
    Abstract: In an example, there is disclosed a compute node, comprising: first one or more logic elements comprising a data producer engine to produce a datum; and a host fabric interface to communicatively couple the compute node to a fabric, the host fabric interface comprising second one or more logic elements comprising a data pulling engine, the data pulling engine to: publish the datum as available; receive a pull request for the datum, the pull request comprising a node identifier for a data consumer; and send the datum to the data consumer via the fabric. There is also disclosed a method of providing a data pulling engine.
    Type: Grant
    Filed: December 24, 2015
    Date of Patent: February 5, 2019
    Assignee: Intel Corporation
    Inventors: James Dinan, Mario Flajslik, Keith Underwood, David Keppel, Ulf Rainer Hanebutte
  • Patent number: 10178041
    Abstract: Technologies for aggregation-based message processing include multiple computing nodes in communication over a network. A computing node receives a message from a remote computing node, increments an event counter in response to receiving the message, determines whether an event trigger is satisfied in response to incrementing the counter, and writes a completion event to an event queue if the event trigger is satisfied. An application of the computing node monitors the event queue for the completion event. The application may be executed by a processor core of the computing node, and the other operations may be performed by a host fabric interface of the computing node. The computing node may be a target node and count one-sided messages received from an initiator node, or the computing node may be an initiator node and count acknowledgement messages received from a target node. Other embodiments are described and claimed.
    Type: Grant
    Filed: September 23, 2015
    Date of Patent: January 8, 2019
    Assignee: Intel Corporation
    Inventors: James Dinan, Mario Flajslik, David Keppel, Ulf R. Hanebutte
  • Patent number: 10135711
    Abstract: Technologies for tracing network performance include a network computing device configured to receive a network packet from a source endpoint node, process the received network packet, capture trace data corresponding to the network packet as it is processed by the network computing device, and transmit the received network packet to a target endpoint node. The network computing device is further configured to generate a trace data network packet that includes at least a portion of the captured trace data and transmit the trace data network packet to the destination endpoint node. The destination endpoint node is configured to monitor performance of the network by reconstructing a trace of the network packet based on the trace data of the trace data network packet. Other embodiments are described herein.
    Type: Grant
    Filed: December 22, 2015
    Date of Patent: November 20, 2018
    Assignee: Intel Corporation
    Inventors: Robert C. Zak, David Keppel, James Dinan
  • Patent number: 10135708
    Abstract: Technologies for monitoring communication performance of a high performance computing (HPC) network include a performance probing engine of a source endpoint node of the HPC network. The performance probing engine is configured to generate a probe request that includes a timestamp of the probe request and transmit the probe request to a destination endpoint node of the HPC network communicatively coupled to the source endpoint node via the HPC network. The performance probing engine is additionally configured to receive a probe response from the destination endpoint node via the HPC network and to generate another timestamp that corresponds to the probe request having been received. Further, the performance probing engine is configured to determine a round-trip latency as a function of the probe request and probe response timestamps. Other embodiments are described and claimed.
    Type: Grant
    Filed: September 25, 2015
    Date of Patent: November 20, 2018
    Assignee: Intel Corporation
    Inventors: James Dinan, David Keppel
  • Patent number: 10061376
    Abstract: A data processing device is configured to deploy, in response to an intermittent source of power, opportunistic power management strategies to manage harvested energy based on an expected amount of energy available to the data processing device and on expected energy expenditures defined by data processing and memory content control writing performed by the data processing device.
    Type: Grant
    Filed: June 26, 2015
    Date of Patent: August 28, 2018
    Assignee: INTEL CORPORATION
    Inventors: Helia Naeimi, David Keppel
  • Publication number: 20180217925
    Abstract: This disclosure describes, in one embodiment an apparatus. The apparatus includes a processor; a memory, an application, collector circuitry and aggregator circuitry. The memory is to store one or more tasks. The application is associated with the one or more tasks. The collector circuitry is to identify a local free address range in at least one address space. The aggregator circuitry is to provide address range data to a subgroup aggregator. The provided address range data includes at least one local free address range.
    Type: Application
    Filed: September 30, 2016
    Publication date: August 2, 2018
    Applicant: INTEL CORPORATION
    Inventors: David Keppel, Charles J. Archer
  • Publication number: 20180183732
    Abstract: Particular embodiments described herein provide for a network element that can be configured to receive a request message, wherein the request message includes a read trigger, an indicator selector, and a completion trigger, determine an indicator that relates to the indicator selector, and perform an action when the read trigger is activated.
    Type: Application
    Filed: December 22, 2016
    Publication date: June 28, 2018
    Applicant: Intel Corporation
    Inventors: David Keppel, Thomas D. Lovett, Michael A. Parker, Robert C. Zak, JR.
  • Patent number: 9965023
    Abstract: A method performed by a multi-core processor is described. The method includes, while a core is executing program code, reading a dirty cache line from the core's last level cache and sending the dirty cache line from the core for storage external from the core, where, the dirty cache line has not been evicted from the cache nor requested by another core or processor.
    Type: Grant
    Filed: September 13, 2016
    Date of Patent: May 8, 2018
    Assignee: INTEL CORPORATION
    Inventors: David Keppel, Kelvin Kwan, Jawad Nasrullah
  • Publication number: 20170289242
    Abstract: Technologies for dynamic work queue management include a producer computing device communicatively coupled to a consumer computing device. The consumer computing device is configured to transmit a pop request (e.g., a one-sided pull request) that includes consumption constraints indicating an amount of work (e.g., a range of acceptable fraction of work elements to return from a work queue of the producer computing device) to pull from the producer computing device. The producer computing device is configured to determine whether the pop request can be satisfied and generate a response that includes an indication of the result of the determination and one or more producer metrics usable by the consumer computing device to determine a subsequent action to be performed by the consumer computing device upon receipt of the response message. Other embodiments are described and claimed herein.
    Type: Application
    Filed: March 31, 2016
    Publication date: October 5, 2017
    Inventors: David Keppel, Ulf R. Hanebutte, Mario Flajslik, James Dinan
  • Patent number: 9766685
    Abstract: In an embodiment, a processor includes a logic to cause at least one core to operate with a power control cycle including a plurality of on times and a plurality of off times according to an ON-OFF keying protocol, where the on and off times vary depending on whether and when an interrupt is incurred. Other embodiments are described and claimed.
    Type: Grant
    Filed: May 15, 2013
    Date of Patent: September 19, 2017
    Assignee: Intel Corporation
    Inventors: David Keppel, Jawad Nasrullah