Patents by Inventor Joel L. Wolf
Joel L. Wolf 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: 10338970Abstract: A method of scheduling assignment of resources to a plurality of applications includes: determining shares of the resources assigned to each application during a first period; determining shares of the resources assigned to each application during a second period that occurs after the first period; determining an imbalance value for each application that is based on a sum of the shares assigned to the corresponding application over both periods; and considering requests of the applications for resources in an order that depends on a result of comparing the imbalance values of the applications.Type: GrantFiled: September 20, 2016Date of Patent: July 2, 2019Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Peter D. Kirchner, Krzysztof P. Onak, Robert Saccone, Kanthi Sarpatwar, Joel L. Wolf
-
Publication number: 20180081722Abstract: A method of scheduling assignment of resources to a plurality of applications includes: determining shares of the resources assigned to each application during a first period; determining shares of the resources assigned to each application during a second period that occurs after the first period; determining an imbalance value for each application that is based on a sum of the shares assigned to the corresponding application over both periods; and considering requests of the applications for resources in an order that depends on a result of comparing the imbalance values of the applications.Type: ApplicationFiled: September 20, 2016Publication date: March 22, 2018Inventors: PETER D. KIRCHNER, KRZYSZTOF P. ONAK, ROBERT SACCONE, KANTHI SARPATWAR, JOEL L. WOLF
-
Patent number: 9336058Abstract: Techniques, systems, and articles of manufacture for automated scheduling management of MapReduce flow-graph applications. A method includes determining a job schedule of MapReduce jobs within each of multiple MapReduce flows in a cluster environment, wherein said job schedule does not violate a precedence relationship within the corresponding MapReduce flow and reduces makespan of the corresponding MapReduce flow, determining a flow schedule for the multiple MapReduce flows based on consideration of a given metric, wherein said flow schedule comprises a number of slots allotted to each of the multiple MapReduce flows, and wherein said number of slots is less than or equal to a number of the one or more MapReduce jobs within each corresponding MapReduce flow, and transforming each job schedule into the flow schedule to allocate resources for the multiple MapReduce flows in the cluster environment without violating a precedence constraint of the multiple MapReduce flows.Type: GrantFiled: March 14, 2013Date of Patent: May 10, 2016Assignee: International Business Machines CorporationInventors: Andrey Balmin, Kirsten W. Hildrum, Viswanath Nagarajan, Joel L. Wolf
-
Patent number: 9274836Abstract: A method for allocating parallel, independent, data tasks includes receiving data tasks, each of the data tasks having a penalty function, determining a generic ordering of the data tasks according to the penalty functions, wherein the generic ordering includes solving an aggregate objective function of the penalty functions, the method further including determining a schedule of the data tasks given the generic ordering, which packs the data tasks to be performed.Type: GrantFiled: October 21, 2014Date of Patent: March 1, 2016Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Kirsten W. Hildrum, Rohit M. Khandekar, Vibhore Kumar, Sujay S. Parekh, Deepak Rajan, Joel L. Wolf, Kun-Lung Wu
-
Publication number: 20150074681Abstract: A method for allocating parallel, independent, data tasks includes receiving data tasks, each of the data tasks having a penalty function, determining a generic ordering of the data tasks according to the penalty functions, wherein the generic ordering includes solving an aggregate objective function of the penalty functions, the method further including determining a schedule of the data tasks given the generic ordering, which packs the data tasks to be performed.Type: ApplicationFiled: October 21, 2014Publication date: March 12, 2015Inventors: Kirsten W. Hildrum, Rohit M. Khandekar, Vibhore Kumar, Sujay S. Parekh, Deepak Rajan, Joel L. Wolf, Kun-Lung Wu
-
Patent number: 8943509Abstract: A method, apparatus, and computer program product for scheduling stream-based applications in a distributed computer system with configurable networks are provided. The method includes choosing, at a highest temporal level, jobs that will run, an optimal template alternative for the jobs that will run, network topology, and candidate processing nodes for processing elements of the optimal template alternative for each running job to maximize importance of work performed by the system. The method further includes making, at a medium temporal level, fractional allocations and re-allocations of the candidate processing elements to the processing nodes in the system to react to changing importance of the work. The method also includes revising, at a lowest temporal level, the fractional allocations and re-allocations on a continual basis to react to burstiness of the work, and to differences between projected and real progress of the work.Type: GrantFiled: March 21, 2008Date of Patent: January 27, 2015Assignee: International Business Machines CorporationInventors: Nikhil Bansal, Kirsten W. Hildrum, James Giles, Deepak Rajan, Philippe L. Seto, Eugen Schenfeld, Rohit Wagle, Joel L. Wolf, Xiaolan J. Zhang
-
Patent number: 8930954Abstract: A method for allocating parallel, independent, data tasks includes receiving data tasks, each of the data tasks having a penalty function, determining a generic ordering of the data tasks according to the penalty functions, wherein the generic ordering includes solving an aggregate objective function of the penalty functions, the method further including determining a schedule of the data tasks given the generic ordering, which packs the data tasks to be performed.Type: GrantFiled: August 10, 2010Date of Patent: January 6, 2015Assignee: International Business Machines CorporationInventors: Kirsten W. Hildrum, Rohit M. Khandekar, Vibhore Kumar, Sujay S. Parekh, Deepak Rajan, Joel L. Wolf, Kun-Lung Wu
-
Patent number: 8869159Abstract: Techniques for scheduling one or more MapReduce jobs in a presence of one or more priority classes are provided. The techniques include obtaining a preferred ordering for one or more MapReduce jobs, wherein the preferred ordering comprises one or more priority classes, prioritizing the one or more priority classes subject to one or more dynamic minimum slot guarantees for each priority class, and iteratively employing a MapReduce scheduler, once per priority class, in priority class order, to optimize performance of the one or more MapReduce jobs.Type: GrantFiled: October 3, 2012Date of Patent: October 21, 2014Assignee: International Business Machines CorporationInventors: Andrey Balmin, Kirsten W. Hildrum, Rohit M. Khandekar, Deepak Rajan, Joel L. Wolf
-
Patent number: 8850445Abstract: Techniques for scheduling multiple flows in a multi-platform cluster environment are provided. The techniques include partitioning a cluster into one or more platform containers associated with one or more platforms in the cluster, scheduling one or more flows in each of the one or more platform containers, wherein the one or more flows are created as one or more flow containers, scheduling one or more individual jobs into the one or more flow containers to create a moldable schedule of one or more jobs, flows and platforms, and automatically converting the moldable schedule into a malleable schedule.Type: GrantFiled: October 3, 2012Date of Patent: September 30, 2014Assignee: International Business Machines CorporationInventors: Andrey Balmin, Anshul Dawra, Kirsten W. Hildrum, Rohit M. Khandekar, Deepak Rajan, Joel L. Wolf
-
Patent number: 8813088Abstract: Techniques for scheduling multiple flows in a multi-platform cluster environment are provided. The techniques include partitioning a cluster into one or more platform containers associated with one or more platforms in the cluster, scheduling one or more flows in each of the one or more platform containers, wherein the one or more flows are created as one or more flow containers, scheduling one or more individual jobs into the one or more flow containers to create a moldable schedule of one or more jobs, flows and platforms, and automatically converting the moldable schedule into a malleable schedule.Type: GrantFiled: May 26, 2011Date of Patent: August 19, 2014Assignee: International Business Machines CorporationInventors: Andrey Balmin, Anshul Dawra, Kirsten W. Hildrum, Rohit M. Khandekar, Deepak Rajan, Joel L. Wolf
-
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: 8595732Abstract: A method for scheduling a data processing job includes receiving the data processing job formed of a plurality of computing units, combining the plurality of computing units into a plurality of sets of tasks, each set including tasks of about equal estimated size, and different sets having different sized tasks, and assigning the tasks to a plurality of processors using a dynamic longest processing time (DLPT) scheme.Type: GrantFiled: November 15, 2010Date of Patent: November 26, 2013Assignee: International Business Machines CorporationInventors: Kirsten W. Hildrum, Rohit M. Khandekar, Vibhore Kumar, Sujay S. Parekh, Deepak Rajan, Joel L. Wolf, 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
-
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: 8484649Abstract: Techniques for scheduling a plurality of jobs sharing input are provided. The techniques include partitioning one or more input datasets into multiple subcomponents, analyzing a plurality of jobs to determine which of the plurality of jobs require scanning of one or more common subcomponents of the one or more input datasets, and scheduling a plurality of jobs that require scanning of one or more common subcomponents of the one or more input datasets, facilitating a single scanning of the one or more common subcomponents to be used as input by each of the plurality of jobs.Type: GrantFiled: January 5, 2011Date of Patent: July 9, 2013Assignee: International Business Machines CorporationInventors: Kirsten W. Hildrum, Rohit M. Khandekar, Sujay 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
-
Publication number: 20120304186Abstract: Techniques for scheduling one or more MapReduce jobs in a presence of one or more priority classes are provided. The techniques include obtaining a preferred ordering for one or more MapReduce jobs, wherein the preferred ordering comprises one or more priority classes, prioritizing the one or more priority classes subject to one or more dynamic minimum slot guarantees for each priority class, and iteratively employing a MapReduce scheduler, once per priority class, in priority class order, to optimize performance of the one or more MapReduce jobs.Type: ApplicationFiled: May 26, 2011Publication date: November 29, 2012Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Andrey Balmin, Kirsten W. Hildrum, Rohit M. Khandekar, Deepak Rajan, Joel L. Wolf
-
Publication number: 20120304188Abstract: Techniques for scheduling multiple flows in a multi-platform cluster environment are provided. The techniques include partitioning a cluster into one or more platform containers associated with one or more platforms in the cluster, scheduling one or more flows in each of the one or more platform containers, wherein the one or more flows are created as one or more flow containers, scheduling one or more individual jobs into the one or more flow containers to create a moldable schedule of one or more jobs, flows and platforms, and automatically converting the moldable schedule into a malleable schedule.Type: ApplicationFiled: May 26, 2011Publication date: November 29, 2012Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Andrey Balmin, Anshul Dawra, Kirsten W. Hildrum, Rohit M. Khandekar, Deepak Rajan, Joel L. Wolf
-
Publication number: 20120174110Abstract: Techniques for scheduling a plurality of jobs sharing input are provided. The techniques include partitioning one or more input datasets into multiple subcomponents, analyzing a plurality of jobs to determine which of the plurality of jobs require scanning of one or more common subcomponents of the one or more input datasets, and scheduling a plurality of jobs that require scanning of one or more common subcomponents of the one or more input datasets, facilitating a single scanning of the one or more common subcomponents to be used as input by each of the plurality of jobs.Type: ApplicationFiled: January 5, 2011Publication date: July 5, 2012Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Kirsten W. Hildrum, Rohit M. Khandekar, Sujay S. Parekh, Deepak Rajan, Joel L. Wolf, Kun-Lung Wu
-
Publication number: 20120110047Abstract: A method for scheduling a data processing job includes receiving the data processing job formed of a plurality of computing units, combining the plurality of computing units into a plurality of sets of tasks, each set including tasks of about equal estimated size, and different sets having different sized tasks, and assigning the tasks to a plurality of processors using a dynamic longest processing time (DLPT) scheme.Type: ApplicationFiled: November 15, 2010Publication date: May 3, 2012Applicant: International Business Machines CorporationInventors: Kirsten W. Hildrum, Rohit M. Khandekar, Vibhore Kumar, Sujay S. Parekh, Deepak Rajan, Joel L. Wolf, Kun-Lung Wu