Patents by Inventor Christopher Lamb
Christopher Lamb 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: 20170083373Abstract: One embodiment of the present invention sets forth a technique for performing nested kernel execution within a parallel processing subsystem. The technique involves enabling a parent thread to launch a nested child grid on the parallel processing subsystem, and enabling the parent thread to perform a thread synchronization barrier on the child grid for proper execution semantics between the parent thread and the child grid. This technique advantageously enables the parallel processing subsystem to perform a richer set of programming constructs, such as conditionally executed and nested operations and externally defined library functions without the additional complexity of CPU involvement.Type: ApplicationFiled: December 2, 2016Publication date: March 23, 2017Inventors: Stephen Jones, Philip Alexander Cuadra, Daniel Elliot Wexler, Ignacio Llamas, Lacky V. Shah, Jerome F. Duluk, Christopher Lamb
-
Patent number: 9575760Abstract: One embodiment sets forth a method for assigning priorities to kernels launched by a software application and executed within a stream of work on a parallel processing subsystem that supports dynamic parallelism. First, the software application assigns a maximum nesting depth for dynamic parallelism. The software application then assigns a stream priority to a stream. These assignments cause a driver to map the stream priority to a device priority and, subsequently, associate the device priority with the stream. As part of the mapping, the driver ensures that each device priority is at least the maximum nesting depth higher than the device priorities associated with any lower priority streams. Subsequently, the driver launches any kernel included in the stream with the device priority associated with the stream. Advantageously, by strategically assigning the maximum nesting depth and prioritizing streams, an application developer may increase the overall processing efficiency of the software application.Type: GrantFiled: May 17, 2013Date of Patent: February 21, 2017Assignee: NVIDIA CorporationInventors: Vivek Kini, Christopher Lamb
-
Publication number: 20170020191Abstract: A control body and cartridge that are coupleable with one another to form an aerosol delivery device are provided. The control body comprises a control component and an RFID reader contained within at least one housing. The cartridge comprises at least one heating element and an RFID tag contained within at least one housing. The RFID reader of the control body is coupled to the control component of the control body and configured to communicate with the RFID tag of the cartridge upon coupling of the control body with the cartridge. The control component of the control body is configured to authorize the cartridge for use with the control body based at least in part on communication between the RFID reader and the RFID tag.Type: ApplicationFiled: July 24, 2015Publication date: January 26, 2017Inventors: Wilson Christopher Lamb, Raymond Charles Henry, JR., Terrence E. Rogers, Frederic Philippe Ampolini
-
Patent number: 9513975Abstract: One embodiment of the present invention sets forth a technique for performing nested kernel execution within a parallel processing subsystem. The technique involves enabling a parent thread to launch a nested child grid on the parallel processing subsystem, and enabling the parent thread to perform a thread synchronization barrier on the child grid for proper execution semantics between the parent thread and the child grid. This technique advantageously enables the parallel processing subsystem to perform a richer set of programming constructs, such as conditionally executed and nested operations and externally defined library functions without the additional complexity of CPU involvement.Type: GrantFiled: May 2, 2012Date of Patent: December 6, 2016Assignee: NVIDIA CorporationInventors: Stephen Jones, Philip Alexander Cuadra, Daniel Elliot Wexler, Ignacio Llamas, Lacky V. Shah, Jerome F. Duluk, Jr., Christopher Lamb
-
Patent number: 9483423Abstract: One embodiment sets forth a method for guiding the order in which a parallel processing subsystem executes memory copies. A driver creates semaphores for all but the lowest priority included in a plurality of priorities and associates one priority with each copy hardware channel included in the parallel processing subsystem. The driver then aliases prioritized streams to the copy hardware channels based on the priorities. Upon receiving a request to execute a memory copy within one of the streams, the driver inserts commands into the aliased copy hardware channel. These commands use the semaphores to direct the parallel processing subsystem to execute the memory copy based on the priority of the copy hardware channel. Advantageously, by assigning priorities to streams and, subsequently, strategically requesting memory copies within the prioritized streams, an application developer may fine-tune their software application to increase the overall processing efficiency of the software application.Type: GrantFiled: May 17, 2013Date of Patent: November 1, 2016Assignee: NVIDIA CorporationInventors: Vivek Kini, Christopher Lamb, Mark Hairgrove
-
Publication number: 20160262453Abstract: The present disclosure relates to aerosol delivery devices that may include components configured to convert electrical energy to heat and atomize an aerosol precursor composition. An outer body may at least partially enclose the components. An illumination source may be configured to output electromagnetic radiation. A wave guide may be configured to receive the electromagnetic radiation from the illumination source and illuminate the aerosol delivery device. The wave guide may define an increasing width from a first longitudinal end at which the electromagnetic radiation is received to an opposing second longitudinal end. Thereby, the wave guide may directly transmit the electromagnetic radiation across the entirety of the second longitudinal end to provide substantially even illumination at the second longitudinal end while employing less material and reducing the volume of space occupied by the wave guide as compared to cylindrical embodiments of wave guides. Related methods are also provided.Type: ApplicationFiled: March 9, 2015Publication date: September 15, 2016Inventors: Frederic Philippe Ampolini, Wilson Christopher Lamb, Michael Pail
-
Publication number: 20160261021Abstract: An aerosol delivery device is provided that includes at least one housing, and a control component and communication interface contained within the housing. The control component is configured to control operation of at least one functional element of the aerosol delivery device based on a detected flow of air through at least a portion of the housing. The communication interface coupled to the control component and configured to enable wireless communication. The communication interface including an antenna, and the housing and antenna are being electrically resonant and tightly coupled in a manner that forms dipole antenna.Type: ApplicationFiled: July 17, 2015Publication date: September 8, 2016Inventors: Nathan T. Marion, Rodney O. Williams, Charles E. Greene, Wilson Christopher Lamb, Raymond Charles Henry, JR., Frederic Philippe Ampolini
-
Publication number: 20160261020Abstract: An aerosol delivery device is provided that includes at least one housing, and a control component and communication interface contained within the housing. The control component is configured to control operation of at least one functional element of the aerosol delivery device based on a detected flow of air through at least a portion of the housing. The communication interface coupled to the control component and configured to enable wireless communication. The communication interface including an antenna, and the housing and antenna are being electrically resonant and tightly coupled in a manner that forms dipole antenna.Type: ApplicationFiled: March 4, 2015Publication date: September 8, 2016Inventors: Nathan T. Marion, Rodney O. Williams, Charles E. Greene, Wilson Christopher Lamb, Raymond Charles Henry, JR., Frederic Philippe Ampolini
-
Publication number: 20160219933Abstract: An aerosol delivery device is provided that includes a housing, heating element, communication interface and microprocessor. The heating element may to activate and vaporize components of an aerosol precursor composition in response to a flow of air through at least a portion of the housing, with the air being combinable with a thereby formed vapor to form an aerosol. The communication interface may effect a wireless, proximity-based communication link with a computing device. And the microprocessor may be coupled to the communication interface, may control at least one functional element of the aerosol delivery device based on a state of the proximity-based communication link, or in response to a trigger signal received from the computing device over the proximity-based communication link.Type: ApplicationFiled: January 29, 2015Publication date: August 4, 2016Inventors: Raymond Charles Henry, JR., Wilson Christopher Lamb, Glen Joseph Kimsey
-
Publication number: 20160158782Abstract: An aerosol delivery device is provided that includes a housing, motion sensor and microprocessor. The motion sensor is within the housing and configured to detect a defined motion of the aerosol delivery device caused by user interaction with the housing to perform a gesture. The motion sensor may be configured to convert the defined motion to an electrical signal. The microprocessor or motion sensor, then, may be configured to receive the electrical signal, recognize the gesture and an operation associated with the gesture based on the electrical signal, and control at least one functional element of the aerosol delivery device to perform the operation.Type: ApplicationFiled: December 9, 2014Publication date: June 9, 2016Inventors: Raymond Charles Henry, JR., Wilson Christopher Lamb, Mark Randall Stone, Glen Joseph Kimsey, Frederic Philippe Ampolini
-
Publication number: 20160007651Abstract: The present disclosure relates to a system and related methods, apparatuses, and computer program products for controlling operation of a device based on a read request. For example, a method for performing an operation in response to a read request may include a first computing device receiving a request to read a value sent to the first computing device by a second computing device via a wireless communication link between the first and second computing devices. The method may further include the first computing device determining an operation corresponding to the value. The method may additionally include the first computing device performing the operation corresponding to the value in response to the request.Type: ApplicationFiled: July 10, 2014Publication date: January 14, 2016Inventors: Frederic Philippe Ampolini, Raymond Charles Henry, JR., Glen Kimsey, Wilson Christopher Lamb
-
Publication number: 20150239169Abstract: The present invention relates to a process for making a container having an integral handle, comprising the steps of: a) providing a preform (6) in a mould cavity (1); b) stretch-blow moulding the preform (6) to form an intermediate container (8) which comprises at least one, preferably two, convex bubble(s) (9); c) deforming the or each convex bubble (9) by means of an inwardly moving plug (5) to form one or more concave gripping region(s), whilst maintaining the pressure within the intermediate container (8) above 1 bar and whilst the temperature of the material in the gripping region of the intermediate container is maintained at a temperature between the glass transition temperature, Tg, and the melt temperature, Tm; d) releasing excess pressure within the container, preferably prior to withdrawing the plug (5) from within the container; and e) ejecting the finished container from the mould cavity (1, 3).Type: ApplicationFiled: December 18, 2014Publication date: August 27, 2015Inventors: William John Cleveland CONNOLLY, Patrick Jean-Francois ETESSE, Christian Gerhard Friedrich GERLACH, Christopher LAMB
-
Patent number: 9050750Abstract: The present invention relates to a process for making a container having an integral handle, comprising the steps of: a) providing a preform (6) in a mold cavity (1); b) stretch-blow molding the preform (6) to form an intermediate container (8) which comprises at least one, preferably two, convex bubble(s) (9); c) deforming the or each convex bubble (9) by means of an inwardly moving plug (5) to form one or more concave gripping region(s), while maintaining the pressure within the intermediate container (8) above 1 bar and while the temperature of the material in the gripping region of the intermediate container is maintained at a temperature between the glass transition temperature, Tg, and the melt temperature, Tm; d) releasing excess pressure within the container, preferably prior to withdrawing the plug (5) from within the container; and e) ejecting the finished container from the mold cavity (1, 3).Type: GrantFiled: March 18, 2009Date of Patent: June 9, 2015Assignee: The Procter & Gamble CompanyInventors: William John Cleveland Connolly, Patrick Jean-Francois Etesse, Christian Gerhard Friedrich Gerlach, Christopher Lamb
-
Publication number: 20140344821Abstract: One embodiment sets forth a method for assigning priorities to kernels launched by a software application and executed within a stream of work on a parallel processing subsystem that supports dynamic parallelism. First, the software application assigns a maximum nesting depth for dynamic parallelism. The software application then assigns a stream priority to a stream. These assignments cause a driver to map the stream priority to a device priority and, subsequently, associate the device priority with the stream. As part of the mapping, the driver ensures that each device priority is at least the maximum nesting depth higher than the device priorities associated with any lower priority streams. Subsequently, the driver launches any kernel included in the stream with the device priority associated with the stream. Advantageously, by strategically assigning the maximum nesting depth and prioritizing streams, an application developer may increase the overall processing efficiency of the software application.Type: ApplicationFiled: May 17, 2013Publication date: November 20, 2014Applicant: NVIDIA CORPORATIONInventors: Vivek KINI, Christopher LAMB
-
Publication number: 20140344528Abstract: One embodiment sets forth a method for guiding the order in which a parallel processing subsystem executes memory copies. A driver creates semaphores for all but the lowest priority included in a plurality of priorities and associates one priority with each copy hardware channel included in the parallel processing subsystem. The driver then aliases prioritized streams to the copy hardware channels based on the priorities. Upon receiving a request to execute a memory copy within one of the streams, the driver inserts commands into the aliased copy hardware channel. These commands use the semaphores to direct the parallel processing subsystem to execute the memory copy based on the priority of the copy hardware channel. Advantageously, by assigning priorities to streams and, subsequently, strategically requesting memory copies within the prioritized streams, an application developer may fine-tune their software application to increase the overall processing efficiency of the software application.Type: ApplicationFiled: May 17, 2013Publication date: November 20, 2014Applicant: NVIDIA CORPORATIONInventors: Vivek KINI, Christopher LAMB, Mark HAIRGROVE
-
Publication number: 20130298133Abstract: One embodiment of the present invention sets forth a technique for performing nested kernel execution within a parallel processing subsystem. The technique involves enabling a parent thread to launch a nested child grid on the parallel processing subsystem, and enabling the parent thread to perform a thread synchronization barrier on the child grid for proper execution semantics between the parent thread and the child grid. This technique advantageously enables the parallel processing subsystem to perform a richer set of programming constructs, such as conditionally executed and nested operations and externally defined library functions without the additional complexity of CPU involvement.Type: ApplicationFiled: May 2, 2012Publication date: November 7, 2013Inventors: Stephen JONES, Philip Alexander Cuadra, Daniel Elliot Wexler, Ignacio Llamas, Lacky V. Shah, Jerome F. Duluk, JR., Christopher Lamb
-
Publication number: 20130124838Abstract: One embodiment of the present invention sets forth a technique instruction level and compute thread array granularity execution preemption. Preempting at the instruction level does not require any draining of the processing pipeline. No new instructions are issued and the context state is unloaded from the processing pipeline. When preemption is performed at a compute thread array boundary, the amount of context state to be stored is reduced because execution units within the processing pipeline complete execution of in-flight instructions and become idle. If, the amount of time needed to complete execution of the in-flight instructions exceeds a threshold, then the preemption may dynamically change to be performed at the instruction level instead of at compute thread array granularity.Type: ApplicationFiled: November 10, 2011Publication date: May 16, 2013Inventors: Lacky V. SHAH, Gregory Scott Palmer, Gernot Schaufler, Samuel H. Duncan, Philip Browning Johnson, Shirish Gadre, Robert Ohannessian, Nicholas Wang, Christopher Lamb, Philip Alexander Cuadra, Timothy John Purcell
-
Publication number: 20130117760Abstract: One embodiment of the present invention sets forth a technique for instruction level execution preemption. Preempting at the instruction level does not require any draining of the processing pipeline. No new instructions are issued and the context state is unloaded from the processing pipeline. Any in-flight instructions that follow the preemption command in the processing pipeline are captured and stored in a processing task buffer to be reissued when the preempted program is resumed. The processing task buffer is designated as a high priority task to ensure the preempted instructions are reissued before any new instructions for the preempted context when execution of the preempted context is restored.Type: ApplicationFiled: November 8, 2011Publication date: May 9, 2013Inventors: Philip Alexander Cuadra, Christopher Lamb, Lacky V. Shah
-
Patent number: 8211620Abstract: The present invention relates to thermoplastic material comprising polymer and at least one polychromic substance, wherein the polychromic substance is a functionalised diacetylene having the formula which has the general structure: X—C?C—C?C—Y—(CO)n-QZ wherein X is H or alkyl, Y is a divalent alkylene group, Q is O, S or NR, R is H or alkyl, and Z is alkyl, and n is 0 or 1. The present invention further relates to a method of processing thermoplastic material to form a plastic article, wherein the method comprises the step of processing the thermoplastic material at a temperature greater than the melt temperature of the thermoplastic, wherein the thermoplastic material comprises polymer and at least one polychromic substance as defined above; and further comprising the step of irradiating the plastic article to color at least a region of the plastic article.Type: GrantFiled: January 14, 2011Date of Patent: July 3, 2012Assignee: The Procter & Gamble CompanyInventors: Neil John Rogers, Christopher Lamb, Anthony Nicholas Jarvis
-
Patent number: 8180998Abstract: A system for performing data-parallel operations and task-parallel operations. A first switch fabric node (SFN) includes first and second lane processing engines (LPEs). The first LPE includes a first set of lane processing units (LPUs) configured to perform data-parallel operations, where each LPU performs a set of operations, and each LPU uses a different set of data for the set of operations, and each LPU within the first set of LPUs uses a different set of data for the set of operations. The second LPE includes a second set of LPUs configured to perform task-parallel operations, where each LPU performs a different set of operations. A processing control engine (PCE) is configured to distribute instructions and data to the first LPE and the second LPE. Advantageously, data parallel operations and task parallel operations are able to be performed on the same processor simultaneously.Type: GrantFiled: September 10, 2008Date of Patent: May 15, 2012Assignee: NVIDIA CorporationInventors: Monier Maher, Christopher Lamb, Sanjay J. Patel, Peter Hsu