Patents by Inventor Joaquin Madruga
Joaquin Madruga 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: 11894947Abstract: A GRE tunnel is configured between multiple computing devices of a distributed cloud computing network and a single origin router of the origin network. The GRE tunnel has a first GRE endpoint that has an IP address that is shared among the computing devices of the distribute cloud computing network and a second GRE endpoint that has a publicly routable IP address of the origin router. A first computing device receives an IP packet from a client that is destined to an origin server. The first computing device processes the received IP packet and encapsulates the IP packet inside an outer packet to generate a GRE encapsulated packet whose source address is the first GRE endpoint and the destination address is the second GRE endpoint. The GRE encapsulated packet is transmitted over the GRE tunnel to the single origin router.Type: GrantFiled: December 18, 2022Date of Patent: February 6, 2024Assignee: CLOUDFLARE, INC.Inventors: Nicholas Alexander Wondra, Achiel Paul van der Mandele, Alexander Forster, Eric Reeves, Joaquin Madruga, Rustam Xing Lalkaka, Marek Przemyslaw Majkowski
-
Patent number: 11853806Abstract: A compute server receives a request from a client device that triggers execution of a third-party code piece. The compute server is one of multiple compute servers that are part of a distributed cloud computing network. The third-party code piece is executed at the compute server and causes a value to be read from a distributed key-value store and/or written to the distributed key-value store. A response is generated to the request based at least in part on the executed third-party code piece, and the generated response is transmitted to the client device.Type: GrantFiled: September 28, 2020Date of Patent: December 26, 2023Assignee: CLOUDFLARE, INC.Inventors: Ashley Williams, Joaquin Madruga, Ashley Lewis
-
Publication number: 20230124628Abstract: A GRE tunnel is configured between multiple computing devices of a distributed cloud computing network and a single origin router of the origin network. The GRE tunnel has a first GRE endpoint that has an IP address that is shared among the computing devices of the distribute cloud computing network and a second GRE endpoint that has a publicly routable IP address of the origin router. A first computing device receives an IP packet from a client that is destined to an origin server. The first computing device processes the received IP packet and encapsulates the IP packet inside an outer packet to generate a GRE encapsulated packet whose source address is the first GRE endpoint and the destination address is the second GRE endpoint. The GRE encapsulated packet is transmitted over the GRE tunnel to the single origin router.Type: ApplicationFiled: December 18, 2022Publication date: April 20, 2023Inventors: Nicholas Alexander Wondra, Achiel Paul van der Mandele, Alexander Forster, Eric Reeves, Joaquin Madruga, Rustam Xing Lalkaka, Marek Przemyslaw Majkowski
-
Patent number: 11533197Abstract: A GRE tunnel is configured between multiple computing devices of a distributed cloud computing network and a single origin router of the origin network. The GRE tunnel has a first GRE endpoint that has an IP address that is shared among the computing devices of the distribute cloud computing network and a second GRE endpoint that has a publicly routable IP address of the origin router. A first computing device receives an IP packet from a client that is destined to an origin server. The first computing device processes the received IP packet and encapsulates the IP packet inside an outer packet to generate a GRE encapsulated packet whose source address is the first GRE endpoint and the destination address is the second GRE endpoint. The GRE encapsulated packet is transmitted over the GRE tunnel to the single origin router.Type: GrantFiled: September 21, 2021Date of Patent: December 20, 2022Assignee: CLOUDFLARE, INC.Inventors: Nicholas Alexander Wondra, Achiel Paul van der Mandele, Alexander Forster, Eric Reeves, Joaquin Madruga, Rustam Xing Lalkaka, Marek Przemyslaw Majkowski
-
Publication number: 20220006671Abstract: A GRE tunnel is configured between multiple computing devices of a distributed cloud computing network and a single origin router of the origin network. The GRE tunnel has a first GRE endpoint that has an IP address that is shared among the computing devices of the distribute cloud computing network and a second GRE endpoint that has a publicly routable IP address of the origin router. A first computing device receives an IP packet from a client that is destined to an origin server. The first computing device processes the received IP packet and encapsulates the IP packet inside an outer packet to generate a GRE encapsulated packet whose source address is the first GRE endpoint and the destination address is the second GRE endpoint. The GRE encapsulated packet is transmitted over the GRE tunnel to the single origin router.Type: ApplicationFiled: September 21, 2021Publication date: January 6, 2022Inventors: Nicholas Alexander Wondra, Achiel Paul van der Mandele, Alexander Forster, Eric Reeves, Joaquin Madruga, Rustam Xing Lalkaka, Marek Przemyslaw Majkowski
-
Patent number: 11128491Abstract: A GRE tunnel is configured between multiple computing devices of a distributed cloud computing network and a single origin router of the origin network. The GRE tunnel has a first GRE endpoint that has an IP address that is shared among the computing devices of the distribute cloud computing network and a second GRE endpoint that has a publicly routable IP address of the origin router. A first computing device receives an IP packet from a client that is destined to an origin server. The first computing device processes the received IP packet and encapsulates the IP packet inside an outer packet to generate a GRE encapsulated packet whose source address is the first GRE endpoint and the destination address is the second GRE endpoint. The GRE encapsulated packet is transmitted over the GRE tunnel to the single origin router.Type: GrantFiled: August 13, 2020Date of Patent: September 21, 2021Assignee: CLOUDFLARE, INC.Inventors: Nicholas Alexander Wondra, Achiel Paul van der Mandele, Alexander Forster, Eric Reeves, Joaquin Madruga, Rustam Xing Lalkaka, Marek Przemyslaw Majkowski
-
Publication number: 20210096926Abstract: A compute server receives a request from a client device that triggers execution of a third-party code piece. The compute server is one of multiple compute servers that are part of a distributed cloud computing network. The third-party code piece is executed at the compute server and causes a value to be read from a distributed key-value store and/or written to the distributed key-value store. A response is generated to the request based at least in part on the executed third-party code piece, and the generated response is transmitted to the client device.Type: ApplicationFiled: September 28, 2020Publication date: April 1, 2021Inventors: Ashley Williams, Joaquin Madruga, Ashley Lewis
-
Publication number: 20210051044Abstract: A GRE tunnel is configured between multiple computing devices of a distributed cloud computing network and a single origin router of the origin network. The GRE tunnel has a first GRE endpoint that has an IP address that is shared among the computing devices of the distribute cloud computing network and a second GRE endpoint that has a publicly routable IP address of the origin router. A first computing device receives an IP packet from a client that is destined to an origin server. The first computing device processes the received IP packet and encapsulates the IP packet inside an outer packet to generate a GRE encapsulated packet whose source address is the first GRE endpoint and the destination address is the second GRE endpoint. The GRE encapsulated packet is transmitted over the GRE tunnel to the single origin router.Type: ApplicationFiled: August 13, 2020Publication date: February 18, 2021Inventors: Nicholas Alexander Wondra, Achiel Paul van der Mandele, Alexander Forster, Eric Reeves, Joaquin Madruga, Rustam Xing Lalkaka, Marek Przemyslaw Majkowski
-
Patent number: 9501809Abstract: A graphics client receives a frame, the frame comprising scene model data. A server load balancing factor is set based on the scene model data. A prospective rendering factor is set based on the scene model data. The frame is partitioned into a plurality of server bands based on the server load balancing factor and the prospective rendering factor. The server bands are distributed to a plurality of compute servers. Processed server bands are received from the compute servers. A processed frame is assembled based on the received processed server bands. The processed frame is transmitted for display to a user as an image.Type: GrantFiled: February 21, 2016Date of Patent: November 22, 2016Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Joaquin Madruga, Barry L. Minor, Mark R. Nutter
-
Patent number: 9483864Abstract: Scene model data, including a scene geometry model and a plurality of pixel data describing objects arranged in a scene, is received. A primary pixel color and a primary ray are generated based on a selected first pixel data. If the primary ray intersects an object in the scene, an intersection point is determined. A surface normal is determined based on the object intersected and the intersection point. The primary pixel color is modified based on a primary hit color, determined based on the intersection point. A plurality of ambient occlusion (AO) rays each having a direction, D, are generated based on the intersection point, P and the surface normal. Each AO ray direction is reversed and the AO ray origin is set to a point outside the scene. An AO ray that does not intersect an object before reaching the intersection point is included in ambient occlusion calculations.Type: GrantFiled: December 5, 2008Date of Patent: November 1, 2016Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Mark R. Nutter, Joaquin Madruga, Barry L. Minor
-
Publication number: 20160171643Abstract: A graphics client receives a frame, the frame comprising scene model data. A server load balancing factor is set based on the scene model data. A prospective rendering factor is set based on the scene model data. The frame is partitioned into a plurality of server bands based on the server load balancing factor and the prospective rendering factor. The server bands are distributed to a plurality of compute servers. Processed server bands are received from the compute servers. A processed frame is assembled based on the received processed server bands. The processed frame is transmitted for display to a user as an image.Type: ApplicationFiled: February 21, 2016Publication date: June 16, 2016Inventors: Joaquin Madruga, Barry L. Minor, Mark R. Nutter
-
Patent number: 9270783Abstract: A graphics client receives a frame, the frame comprising scene model data. A server load balancing factor is set based on the scene model data. A prospective rendering factor is set based on the scene model data. The frame is partitioned into a plurality of server bands based on the server load balancing factor and the prospective rendering factor. The server bands are distributed to a plurality of compute servers. Processed server bands are received from the compute servers. A processed frame is assembled based on the received processed server bands. The processed frame is transmitted for display to a user as an image.Type: GrantFiled: December 6, 2008Date of Patent: February 23, 2016Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Joaquin Madruga, Barry L. Minor, Mark R. Nutter
-
Patent number: 9038079Abstract: A method for efficient dispatch/completion of a work element within a multi-node data processing system. The method comprises: selecting specific processing units from among the processing nodes to complete execution of a work element that has multiple individual work items that may be independently executed by different ones of the processing units; generating an allocated processor unit (APU) bit mask that identifies at least one of the processing units that has been selected; placing the work element in a first entry of a global command queue (GCQ); associating the APU mask with the work element in the GCQ; and responsive to receipt at the GCQ of work requests from each of the multiple processing nodes or the processing units, enabling only the selected specific ones of the processing nodes or the processing units to be able to retrieve work from the work element in the GCQ.Type: GrantFiled: September 15, 2012Date of Patent: May 19, 2015Assignee: International Business Machines CorporationInventors: Benjamin Gale Alexander, Gregory Howard Bellows, Joaquin Madruga, Barry L. Minor
-
Patent number: 8949529Abstract: Disclosed are a method, a system and a computer program product of operating a data processing system that can include or be coupled to multiple processor cores. In one or more embodiments, each of multiple memory objects can be populated with work items and can be associated with attributes that can include information which can be used to describe data of each memory object and/or which can be used to process data of each memory object. The attributes can be used to indicate one or more of a cache policy, a cache size, and a cache line size, among others. In one or more embodiments, the attributes can be used as a history of how each memory object is used. The attributes can be used to indicate cache history statistics (e.g., a hit rate, a miss rate, etc.).Type: GrantFiled: December 30, 2009Date of Patent: February 3, 2015Assignee: International Business Machines CorporationInventors: Gregory H. Bellows, Joaquin Madruga, Ross A. Mikosh, Barry L. Minor
-
Patent number: 8903180Abstract: A mechanism is provided for security screening image analysis simplification through object pattern identification. Popular consumer electronics and other items are scanned in a control system, which creates an electronic signature for each known object. The system may reduce the signature to a hash value and place each signature for each known object in a “known good” storage set. For example, popular mobile phones, laptop computers, digital cameras, and the like may be scanned for the known good signature database. At the time of scan, such as at an airport, objects in a bag may be rotated to a common axis alignment and transformed to the same signature or hash value to match against the known good signature database. If an item matches, the scanning system marks it as a known safe object.Type: GrantFiled: September 12, 2012Date of Patent: December 2, 2014Assignee: International Business Machines CorporationInventors: Joaquin Madruga, Barry L. Minor, Michael A. Paolini
-
Patent number: 8893145Abstract: A method efficiently dispatches completes a work element within a multi-node, data processing system that has a global command queue (GCQ) and at least one high latency node. The method comprises: at the high latency processor node, work scheduling logic establishing a local command/work queue (LCQ) in which multiple work items for execution by local processing units can be staged prior to execution; a first local processing unit retrieving via a work request a larger chunk size of work than can be completed in a normal work completion execution cycle by the local processing unit; storing the larger chunk size of work retrieved in a local command/work queue (LCQ); enabling the first local processing unit to locally schedule and complete portions of the work stored within the LCQ; and transmitting a next work request to the GCQ only when all the work within the LCQ has been dispatched by the local processing units.Type: GrantFiled: September 15, 2012Date of Patent: November 18, 2014Assignee: International Business Machines CorporationInventors: Benjamin Gale Alexander, Gregory Howard Bellows, Joaquin Madruga, Barry L. Minor
-
Patent number: 8819690Abstract: A system for efficient dispatch/completion of a work element within a multi-node data processing system. The system comprises a processor performing the functions of: selecting specific processing units from among the processing nodes to complete execution of a work element that has multiple individual work items that may be independently executed by different ones of the processing units; generating an allocated processor unit (APU) bit mask that identifies at least one of the processing units that has been selected; placing the work element in a first entry of a global command queue (GCQ); associating the APU mask with the work element in the GCQ; and responsive to receipt at the GCQ of work requests from each of the multiple processing nodes or the processing units, enabling only the selected specific ones of the processing nodes or the processing units to be able to retrieve work from the work element in the GCQ.Type: GrantFiled: December 30, 2009Date of Patent: August 26, 2014Assignee: International Business Machines CorporationInventors: Benjamin G. Alexander, Gregory H. Bellows, Joaquin Madruga, Barry L. Minor
-
Patent number: 8665271Abstract: A method comprises receiving scene model data including a scene geometry model and a plurality of pixel data describing objects arranged in a scene. The method generates a primary ray based on a selected first pixel data. In the event the primary ray intersects an object in the scene, the method determines primary hit color data and generates a plurality of secondary rays. The method groups the secondary packets and arranges the packets in a queue based on the octant of each direction vector in the secondary ray packet. The method generates secondary color data based on the secondary ray packets in the queue and generates a pixel color based on the primary hit color data, and the secondary color data. The method generates an image based on the pixel color for the pixel data.Type: GrantFiled: April 27, 2012Date of Patent: March 4, 2014Assignee: International Business Machines CorporationInventors: Mark Richard Nutter, Gordon C. Fossum, Joaquin Madruga, Barry L. Minor
-
Patent number: 8640108Abstract: A technique for managing hardware resources and threads within a data processing system is disclosed. Compilation attributes of a function are collected during and after the compilation of the function. The pre-processing attributes of the function are also collected before the execution of the function. The collected attributes of the function are then analyzed, and a runtime configuration is assigned to the function based of the result of the attribute analysis. The runtime configuration may include, for example, the designation of the function to be executed under either a single-threaded mode or a simultaneous multi-threaded mode. During the execution of the function, real-time attributes of the function are being continuously collected. If necessary, the runtime configuration under which the function is being executed can be changed based on the real-time attributes collected during the execution of the function.Type: GrantFiled: December 31, 2009Date of Patent: January 28, 2014Assignee: International Business Machines CorporationInventors: Greg H. Bellows, Brian H. Horton, Joaquin Madruga, Barry L. Minor
-
Patent number: 8640109Abstract: A method for managing hardware resources and threads within a data processing system is disclosed. Compilation attributes of a function are collected during and after the compilation of the function. The pre-processing attributes of the function are also collected before the execution of the function. The collected attributes of the function are then analyzed, and a runtime configuration is assigned to the function based of the result of the attribute analysis. The runtime configuration may include, for example, the designation of the function to be executed under either a single-threaded mode or a simultaneous multi-threaded mode. During the execution of the function, real-time attributes of the function are being continuously collected. If necessary, the runtime configuration under which the function is being executed can be changed based on the real-time attributes collected during the execution of the function.Type: GrantFiled: April 11, 2012Date of Patent: January 28, 2014Assignee: International Business Machines CorporationInventors: Gregory H. Bellows, Brian H. Horton, Joaquin Madruga, Barry L. Minor