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: 10338970
    Abstract: 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: Grant
    Filed: September 20, 2016
    Date of Patent: July 2, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Peter D. Kirchner, Krzysztof P. Onak, Robert Saccone, Kanthi Sarpatwar, Joel L. Wolf
  • Publication number: 20180081722
    Abstract: 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: Application
    Filed: September 20, 2016
    Publication date: March 22, 2018
    Inventors: PETER D. KIRCHNER, KRZYSZTOF P. ONAK, ROBERT SACCONE, KANTHI SARPATWAR, JOEL L. WOLF
  • Patent number: 9336058
    Abstract: 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: Grant
    Filed: March 14, 2013
    Date of Patent: May 10, 2016
    Assignee: International Business Machines Corporation
    Inventors: Andrey Balmin, Kirsten W. Hildrum, Viswanath Nagarajan, Joel L. Wolf
  • Patent number: 9274836
    Abstract: 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: Grant
    Filed: October 21, 2014
    Date of Patent: March 1, 2016
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Kirsten W. Hildrum, Rohit M. Khandekar, Vibhore Kumar, Sujay S. Parekh, Deepak Rajan, Joel L. Wolf, Kun-Lung Wu
  • Publication number: 20150074681
    Abstract: 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: Application
    Filed: October 21, 2014
    Publication date: March 12, 2015
    Inventors: Kirsten W. Hildrum, Rohit M. Khandekar, Vibhore Kumar, Sujay S. Parekh, Deepak Rajan, Joel L. Wolf, Kun-Lung Wu
  • Patent number: 8943509
    Abstract: 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: Grant
    Filed: March 21, 2008
    Date of Patent: January 27, 2015
    Assignee: International Business Machines Corporation
    Inventors: Nikhil Bansal, Kirsten W. Hildrum, James Giles, Deepak Rajan, Philippe L. Seto, Eugen Schenfeld, Rohit Wagle, Joel L. Wolf, Xiaolan J. Zhang
  • Patent number: 8930954
    Abstract: 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: Grant
    Filed: August 10, 2010
    Date of Patent: January 6, 2015
    Assignee: International Business Machines Corporation
    Inventors: Kirsten W. Hildrum, Rohit M. Khandekar, Vibhore Kumar, Sujay S. Parekh, Deepak Rajan, Joel L. Wolf, Kun-Lung Wu
  • Patent number: 8869159
    Abstract: 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: Grant
    Filed: October 3, 2012
    Date of Patent: October 21, 2014
    Assignee: International Business Machines Corporation
    Inventors: Andrey Balmin, Kirsten W. Hildrum, Rohit M. Khandekar, Deepak Rajan, Joel L. Wolf
  • Patent number: 8850445
    Abstract: 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: Grant
    Filed: October 3, 2012
    Date of Patent: September 30, 2014
    Assignee: International Business Machines Corporation
    Inventors: Andrey Balmin, Anshul Dawra, Kirsten W. Hildrum, Rohit M. Khandekar, Deepak Rajan, Joel L. Wolf
  • Patent number: 8813088
    Abstract: 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: Grant
    Filed: May 26, 2011
    Date of Patent: August 19, 2014
    Assignee: International Business Machines Corporation
    Inventors: Andrey Balmin, Anshul Dawra, Kirsten W. Hildrum, Rohit M. Khandekar, Deepak Rajan, Joel L. Wolf
  • Patent number: 8782628
    Abstract: 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: Grant
    Filed: April 26, 2013
    Date of Patent: July 15, 2014
    Assignee: International Business Machines Corporation
    Inventors: Henrique Andrade, Bugra Gedik, Kirsten W. Hildrum, Rohit M. Khandekar, Sujay S. Parekh, Deepak Rajan, Joel L. Wolf, Kun-Lung Wu
  • Patent number: 8595732
    Abstract: 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: Grant
    Filed: November 15, 2010
    Date of Patent: November 26, 2013
    Assignee: International Business Machines Corporation
    Inventors: Kirsten W. Hildrum, Rohit M. Khandekar, Vibhore Kumar, Sujay S. Parekh, Deepak Rajan, Joel L. Wolf, Kun-Lung Wu
  • Publication number: 20130239100
    Abstract: 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: Application
    Filed: April 26, 2013
    Publication date: September 12, 2013
    Applicant: International Business Machines Corporation
    Inventors: Henrique Andrade, Bugra Gedik, Kirsten W. Hildrum, Rohit M. Khandekar, Sujay S. Parekh, Deepak Rajan, Joel L. Wolf, Kun-Lung Wu
  • Patent number: 8490072
    Abstract: 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: Grant
    Filed: June 23, 2009
    Date of Patent: July 16, 2013
    Assignee: International Business Machines Corporation
    Inventors: Henrique Andrade, Bugra Gedik, Kirsten W. Hildrum, Rohit M. Khandekar, Sunjay S. Parekh, Deepak Rajan, Joel L. Wolf, Kun-Lung Wu
  • Patent number: 8484649
    Abstract: 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: Grant
    Filed: January 5, 2011
    Date of Patent: July 9, 2013
    Assignee: International Business Machines Corporation
    Inventors: Kirsten W. Hildrum, Rohit M. Khandekar, Sujay S. Parekh, Deepak Rajan, Joel L. Wolf, Kun-Lung Wu
  • Patent number: 8479181
    Abstract: 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: Grant
    Filed: February 1, 2010
    Date of Patent: July 2, 2013
    Assignee: International Business Machines Corporation
    Inventors: Henrique Andrade, Bugra Gedik, Andrew L. Frenkiel, Rohit M. Kandekar, Joel L. Wolf, Kun-Lung Wu
  • Publication number: 20120304186
    Abstract: 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: Application
    Filed: May 26, 2011
    Publication date: November 29, 2012
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Andrey Balmin, Kirsten W. Hildrum, Rohit M. Khandekar, Deepak Rajan, Joel L. Wolf
  • Publication number: 20120304188
    Abstract: 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: Application
    Filed: May 26, 2011
    Publication date: November 29, 2012
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Andrey Balmin, Anshul Dawra, Kirsten W. Hildrum, Rohit M. Khandekar, Deepak Rajan, Joel L. Wolf
  • Publication number: 20120174110
    Abstract: 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: Application
    Filed: January 5, 2011
    Publication date: July 5, 2012
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Kirsten W. Hildrum, Rohit M. Khandekar, Sujay S. Parekh, Deepak Rajan, Joel L. Wolf, Kun-Lung Wu
  • Publication number: 20120110047
    Abstract: 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: Application
    Filed: November 15, 2010
    Publication date: May 3, 2012
    Applicant: International Business Machines Corporation
    Inventors: Kirsten W. Hildrum, Rohit M. Khandekar, Vibhore Kumar, Sujay S. Parekh, Deepak Rajan, Joel L. Wolf, Kun-Lung Wu