Patents by Inventor Henrique Andrade
Henrique Andrade 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: 8806510Abstract: Techniques for determining feasibility of a set of one or more operator partitioning constraints are provided. The techniques include receiving one or more sets of operator partitioning constraints, wherein each set of one or more constraints define one or more desired conditions for grouping together of operators into partitions and placing partitions on hosts, wherein each operator is embodied as software that performs a particular function, processing each set of one or more operator partitioning constraints to determine feasibility of each set of one or more operator partitioning constraints, creating and outputting one or more candidate partitions and one or more host placements for each set of feasible partitioning constraints, and creating and outputting a certificate of infeasibility for each set of infeasible partitioning constraints, wherein the certificate of infeasibility outlines one or more reasons for infeasibility.Type: GrantFiled: September 10, 2009Date of Patent: August 12, 2014Assignee: International Business Machines CorporationInventors: Henrique Andrade, Bugra Gedik, Kirsten Weale Hildrum, Rohit Madhukar Khandekar, Sujay Sunil Parekh, Deepak Rajan, Joel Leonard Wolf, Kun-Lung Wu
-
Publication number: 20140215484Abstract: Data analysis applications include model building components and stream processing components. To increase utility of the data analysis application, in one embodiment, the model building component of the data analysis application is managed. Management includes resource allocation and/or configuration adaptation of the model building component, as examples.Type: ApplicationFiled: January 7, 2014Publication date: July 31, 2014Applicant: International Business Machines CorporationInventors: Henrique Andrade, Bugra Gedik, Vibhore Kumar, Kun-Lung Wu
-
Patent number: 8782628Abstract: Techniques for partitioning an operator flow graph are provided. The techniques include receiving source code for a stream processing application, wherein the source code comprises an operator flow graph, wherein the operator flow graph comprises a plurality of operators, receiving profiling data associated with the plurality of operators and one or more processing requirements of the operators, defining a candidate partition as a coalescing of one or more of the operators into one or more sets of processing elements (PEs), using the profiling data to create one or more candidate partitions of the processing elements, using the one or more candidate partitions to choose a desired partitioning of the operator flow graph, and compiling the source code into an executable code based on the desired partitioning.Type: GrantFiled: April 26, 2013Date of Patent: July 15, 2014Assignee: International Business Machines CorporationInventors: Henrique Andrade, Bugra Gedik, Kirsten W. Hildrum, Rohit M. Khandekar, Sujay S. Parekh, Deepak Rajan, Joel L. Wolf, Kun-Lung Wu
-
Patent number: 8656396Abstract: A method to optimize performance of an operator on a computer system includes determining whether the system is busy, decreasing a software thread level within the operator if the system is busy, and increasing the software thread level within the operator if the system is not busy and a performance measure of the system at a current software thread level of the operator is greater than a performance measure of the system when the operator has a lower software thread level.Type: GrantFiled: August 11, 2009Date of Patent: February 18, 2014Assignee: International Business Machines CorporationInventors: Henrique Andrade, Bugra Gedik, Scott A. Schneider, Kun-Lung Wu
-
Patent number: 8656369Abstract: A method is provided for tracing dataflow in a distributed computing application. For example, the method includes incrementally advancing a dataflow in a dataflow path of one or more dataflow paths according to two or more directives encoded in two or more data messages. The method further includes performing the two or more directives. The dataflow path includes one or more operators including at least one merge operator operative to merge the two or more data messages and merge the two or more directives. One or more of the incrementally advancing of the dataflow and the performing of the two or more directives are implemented as instruction code performed on a processor device.Type: GrantFiled: May 24, 2010Date of Patent: February 18, 2014Assignee: International Business Machines CorporationInventors: Paul V. Allen, Henrique Andrade, Wim De Pauw, Bugra Gedik, Andy L. Frenkiel, Michael Donald Pfeifer
-
Patent number: 8645966Abstract: Data analysis applications include model building components and stream processing components. To increase utility of the data analysis application, in one embodiment, the model building component of the data analysis application is managed. Management includes resource allocation and/or configuration adaptation of the model building component, as examples.Type: GrantFiled: March 11, 2010Date of Patent: February 4, 2014Assignee: International Business Machines CorporationInventors: Henrique Andrade, Bugra Gedik, Vibhore Kumar, Kun-Lung Wu
-
Publication number: 20140033173Abstract: An embodiment of the invention provides a method of displaying a data flow, wherein a description of a data flow application to be displayed is received. The data flow application includes nodes and edges connecting the nodes, wherein the nodes represent operators and the edges represent data connections for data flowing between the operations. A reason that a user is to view the data flow and/or a user constraint on a complexity of the data flow application to be displayed is determined with a processor; and, the time required to render a display of the data flow application is estimated. A transformed representation of the data flow application is created with the processor. The transformed representation is created based upon the user reason, the user constraint, the estimated time of rendering, and/or a layout strategy. The transformed representation is displayed on a graphical user interface.Type: ApplicationFiled: May 11, 2012Publication date: January 30, 2014Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Andrew Lawrence Frenkiel, Henrique Andrade, Bugra Gedik, Michael Donald Pfeifer, Wim De Pauw
-
Patent number: 8601458Abstract: Techniques for compiling a data stream processing application are provided. The techniques include receiving, by a compiler executing on a computer system, source code for a data stream processing application, wherein the source code comprises source code for a plurality of operators, each of which performs a data processing function, determining, by the compiler, one or more characteristics of operators within the data stream processing application, grouping, by the compiler, the operators into one or more execution containers based on the one or more characteristics, and compiling, by the compiler, the source code for the data stream processing application into executable code, wherein the executable code comprises a plurality of execution units, wherein each execution unit contains one or more of the operators, wherein each operator is assigned to an execution unit based on the grouping, and wherein each execution unit is to be executed in a partition.Type: GrantFiled: May 14, 2009Date of Patent: December 3, 2013Assignee: International Business Machines CorporationInventors: Henrique Andrade, Bugra Gedik, Kun-Lung Wu
-
Patent number: 8589864Abstract: An application provisioning model is automatically created. The model is created from a high-level application and specifies dependencies of the application. It is used to provision the application on one or more nodes or other actions.Type: GrantFiled: January 26, 2010Date of Patent: November 19, 2013Assignee: International Business Machines CorporationInventors: Henrique Andrade, Judah M. Diament, Andrew L. Frenkiel, Bugra Gedik, Martin J. Hirzel, Anton V. Riabov
-
Patent number: 8560602Abstract: Data sharing is facilitated in stream processing environments, including distributed stream processing environments. A processor of the stream processing environment obtains at least one of usage information for shared data of the stream processing environment, one or more pre-declared characteristics of the shared data, or performance information relating to the stream processing environment. Based on at least one of the usage information, the one or more pre-declared characteristics or the performance information, code is generated for managing the shared data.Type: GrantFiled: September 10, 2012Date of Patent: October 15, 2013Assignee: International Business Machines CorporationInventors: Henrique Andrade, Bugra Gedik, Martin J. Hirzel, Vibhore Kumar, Giuliano Losa, Robert J. Soule, Kun-Lung Wu
-
Publication number: 20130239100Abstract: Techniques for partitioning an operator flow graph are provided. The techniques include receiving source code for a stream processing application, wherein the source code comprises an operator flow graph, wherein the operator flow graph comprises a plurality of operators, receiving profiling data associated with the plurality of operators and one or more processing requirements of the operators, defining a candidate partition as a coalescing of one or more of the operators into one or more sets of processing elements (PEs), using the profiling data to create one or more candidate partitions of the processing elements, using the one or more candidate partitions to choose a desired partitioning of the operator flow graph, and compiling the source code into an executable code based on the desired partitioning.Type: ApplicationFiled: April 26, 2013Publication date: September 12, 2013Applicant: International Business Machines CorporationInventors: Henrique Andrade, Bugra Gedik, Kirsten W. Hildrum, Rohit M. Khandekar, Sujay S. Parekh, Deepak Rajan, Joel L. Wolf, Kun-Lung Wu
-
Publication number: 20130238936Abstract: In one embodiment, the invention comprises partial fault tolerant stream processing applications. One embodiment of a method for implementing partial fault tolerance in a stream processing application comprising a plurality of stream operators includes: defining a quality score function that expresses how well the application is performing quantitatively, injecting a fault into at least one of the plurality of operators, assessing an impact of the fault on the quality score function, and selecting at least one partial fault-tolerant technique for implementation in the application based on the quantitative metric-driven assessment.Type: ApplicationFiled: April 22, 2013Publication date: September 12, 2013Applicant: International Business Machines CorporationInventors: Henrique Andrade, Bugra Gedik, Gabriela Jacques da Silva, Kun-Lung Wu
-
Patent number: 8499292Abstract: A virtual execution environment (VEE) for a streaming Intermediate Language (IL), wherein the streaming IL represents a streaming program, communicates streaming data in queues, stores data-at-rest in variables, and determines data by functions, where inputs are read from the queues and the variables, and outputs are written to the queues and the variables.Type: GrantFiled: March 8, 2010Date of Patent: July 30, 2013Assignee: International Business Machines CorporationInventors: Henrique Andrade, Jim Challenger, Bugra Gedik, Robert Grimm, Martin J. Hirzel, Vibhore Kumar, Robert Soule, Kun-Lung Wu
-
Patent number: 8495595Abstract: A method and computer program product for selecting an expression evaluation technique for domain-specific language (DSL) compilation. An application written in DSL for a programming task is provided, the application including a plurality of components configured by expressions. A technique that most quickly implements the programming task is selected from a plurality of techniques for evaluating the expressions. The DSL application is compiled in accordance with the selected expression evaluation technique to generate general-purpose programming language (GPL) code.Type: GrantFiled: March 30, 2010Date of Patent: July 23, 2013Assignee: International Business Machines CorporationInventors: Henrique Andrade, Bugra Gedik, Mark Mendell, Howard W. Nasgaard, Kun-Lung Wu
-
Patent number: 8490072Abstract: Techniques for partitioning an operator flow graph are provided. The techniques include receiving source code for a stream processing application, wherein the source code comprises an operator flow graph, wherein the operator flow graph comprises a plurality of operators, receiving profiling data associated with the plurality of operators and one or more processing requirements of the operators, defining a candidate partition as a coalescing of one or more of the operators into one or more sets of processing elements (PEs), using the profiling data to create one or more candidate partitions of the processing elements, using the one or more candidate partitions to choose a desired partitioning of the operator flow graph, and compiling the source code into an executable code based on the desired partitioning.Type: GrantFiled: June 23, 2009Date of Patent: July 16, 2013Assignee: International Business Machines CorporationInventors: Henrique Andrade, Bugra Gedik, Kirsten W. Hildrum, Rohit M. Khandekar, Sunjay S. Parekh, Deepak Rajan, Joel L. Wolf, Kun-Lung Wu
-
Patent number: 8479181Abstract: Techniques for performing capacity planning for applications running on a computational infrastructure are provided. The techniques include instrumenting an application under development to receive one or more performance metrics under a physical deployment plan, receiving the one or more performance metrics from the computational infrastructure hosting one or more applications that are currently running, using a predictive inference engine to determine how the application under development can be deployed, and using the determination to perform capacity planning for the applications on the computational infrastructure.Type: GrantFiled: February 1, 2010Date of Patent: July 2, 2013Assignee: International Business Machines CorporationInventors: Henrique Andrade, Bugra Gedik, Andrew L. Frenkiel, Rohit M. Kandekar, Joel L. Wolf, Kun-Lung Wu
-
Patent number: 8473783Abstract: Fault tolerance is provided in a distributed system. The complexity of replicas and rollback requests are avoided; instead, a local failure in a component of a distributed system is tolerated. The local failure is tolerated by storing state related to a requested operation on the component, persisting that stored state in a data store, such as a relational database, asynchronously processing the operation request, and if a failure occurs, restarting the component using the stored state from the data store.Type: GrantFiled: November 9, 2010Date of Patent: June 25, 2013Assignee: International Business Machines CorporationInventors: Henrique Andrade, Kirsten W. Hildrum, Michael J. E. Spicer, Chitra Venkatramani, Rohit S. Wagle
-
Patent number: 8458650Abstract: In one embodiment, the invention comprises partial fault tolerant stream processing applications. One embodiment of a method for implementing partial fault tolerance in a stream processing application comprising a plurality of stream operators includes: defining a quality score function that expresses how well the application is performing quantitatively, injecting a fault into at least one of the plurality of operators, assessing an impact of the fault on the quality score function, and selecting at least one partial fault-tolerant technique for implementation in the application based on the quantitative metric-driven assessment.Type: GrantFiled: March 29, 2010Date of Patent: June 4, 2013Assignee: International Business Machines CorporationInventors: Henrique Andrade, Bugra Gedik, Gabriela Jacques da Silva, Kun-Lung Wu
-
Patent number: 8407360Abstract: Techniques for generating a distributed stream processing application are provided. The techniques include obtaining a declarative description of one or more data stream processing tasks from a graph of operators, wherein the declarative description expresses at least one stream processing task, generating one or more containers that encompass a combination of one or more stream processing operators, and generating one or more execution units from the declarative description of one or more data stream processing tasks, wherein the one or more execution units are deployable across one or more distributed computing nodes, and comprise a distributed data stream processing application binary.Type: GrantFiled: June 13, 2012Date of Patent: March 26, 2013Assignee: International Business Machines CorporationInventors: Henrique Andrade, Bugra Gedik, Kun-Lung Wu
-
Publication number: 20130018943Abstract: State sharing is facilitated in stream processing environments, including distributed stream processing environments. A customized shared state implementation representing the state to be shared is automatically created based on at least one of user preferences, hints of usage, and system performance.Type: ApplicationFiled: September 10, 2012Publication date: January 17, 2013Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Henrique Andrade, Bugra Gedik, Martin J. Hirzel, Vibhore Kumar, Giuliano Losa, Robert J. Soule, Kun-Lung Wu