Patents by Inventor Dineel D. Sule

Dineel D. Sule 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: 9811452
    Abstract: Systems and methods for profiling application code are disclosed. The method is hybrid in nature as it may include inserting instrumentation within application code and also periodic sample gathering, by employing a runtime app profile generator that provides the hybrid profiling infrastructure and is linked to the application code. An executable user application is then generated from the application code, and the executable user application is executed. The runtime app profile generator is then launched in response to the execution of the application code, and hybrid profiling results are generated by obtaining samples from the different threads of the executed application code and accumulating instrumented execution information. In some implementations, the hybrid profiling results capture even cold regions of the code and can also be used for a next round of profiling through automated targeted instrumentation.
    Type: Grant
    Filed: February 1, 2016
    Date of Patent: November 7, 2017
    Assignee: QUALCOMM Innovation Center, Inc.
    Inventors: Dineel D. Sule, Subrato K. De, Wilson Kwan
  • Patent number: 9690551
    Abstract: A computing device with an optimizing compiler is disclosed that is configured to generate optimized machine code including a vector operation corresponding to multiple scalar operations where the vector operation is a single operation on multiple pairs of operands. The optimizing compiler includes a vector guard condition generator configured to generate a vector guard condition for one or more vector operations, a mapping module to generate a mapping between elements of the vector guard condition and positions of the relevant scalar operations in the non-optimized machine code or intermediate representation of the source code, and a guard condition handler configured to initiate execution from a particular scalar operation in the non-optimized machine code or intermediate representation if the vector guard condition is triggered. The computing device may include a non-optimizing compiler and/or an interpreter to perform execution of the scalar operations if the vector guard condition is triggered.
    Type: Grant
    Filed: March 28, 2016
    Date of Patent: June 27, 2017
    Assignee: QUALCOMM Innovation Center, Inc.
    Inventors: Subrato K. De, Zaheer Ahmad, Dineel D. Sule, Yang Ding
  • Patent number: 9569234
    Abstract: A content processing device and corresponding method for processing source code are disclosed. The method may include receiving source code with a virtual machine operating on a hardware platform with an inherent address-pointer-bit-width and generating, from the source code, executable code that includes internal address pointers to objects in the virtual machine heap. One or more runtime conditions may be monitored and a size of a bit-width for the internal address pointers in the virtual machine may be adjusted, with or without associated changes to create optimized layout of the objects in the virtual machine heap, based upon one or more runtime conditions.
    Type: Grant
    Filed: October 27, 2014
    Date of Patent: February 14, 2017
    Assignee: Qualcomm Innovation Center, Inc.
    Inventors: Subrato K. De, Derek J. Conrod, Dineel D. Sule
  • Publication number: 20160299746
    Abstract: A computing device with an optimizing compiler is disclosed that is configured to generate optimized machine code including a vector operation corresponding to multiple scalar operations where the vector operation is a single operation on multiple pairs of operands. The optimizing compiler includes a vector guard condition generator configured to generate a vector guard condition for one or more vector operations, a mapping module to generate a mapping between elements of the vector guard condition and positions of the relevant scalar operations in the non-optimized machine code or intermediate representation of the source code, and a guard condition handler configured to initiate execution from a particular scalar operation in the non-optimized machine code or intermediate representation if the vector guard condition is triggered. The computing device may include a non-optimizing compiler and/or an interpreter to perform execution of the scalar operations if the vector guard condition is triggered.
    Type: Application
    Filed: March 28, 2016
    Publication date: October 13, 2016
    Inventors: Subrato K. De, Zaheer Ahmad, Dineel D. Sule, Yang Ding
  • Publication number: 20160239408
    Abstract: Systems and methods for profiling application code are disclosed. The method is hybrid in nature as it may include inserting instrumentation within application code and also periodic sample gathering, by employing a runtime app profile generator that provides the hybrid profiling infrastructure and is linked to the application code. An executable user application is then generated from the application code, and the executable user application is executed. The runtime app profile generator is then launched in response to the execution of the application code, and hybrid profiling results are generated by obtaining samples from the different threads of the executed application code and accumulating instrumented execution information. In some implementations, the hybrid profiling results capture even cold regions of the code and can also be used for a next round of profiling through automated targeted instrumentation.
    Type: Application
    Filed: February 1, 2016
    Publication date: August 18, 2016
    Inventors: Dineel D. Sule, Subrato K. De, Wilson Kwan
  • Patent number: 9329879
    Abstract: A computing device adapted to receive at least one JavaScript, the computing device comprising a processor type and one or more architectural features. The at least one JavaScript comprises one or more first sections of the JavaScript and one or more second sections of the JavaScript. The one or more first sections of the JavaScript may be pre-compiled using the processor type or the one or more architectural features. The one or more second sections of the JavaScript may be sent to a JavaScript Compiler in source format. A JavaScript Engine may be adapted to execute the one or more first sections of the JavaScript and the subsequently compiled one or more second sections of the JavaScript, keeping elements of the scripting code proprietary, with the pre-compilation of the one or more first sections of the JavaScript eliminating run-time compilation and therefore providing performance benefits.
    Type: Grant
    Filed: February 23, 2012
    Date of Patent: May 3, 2016
    Assignee: Qualcomm Innovation Center, Inc.
    Inventors: Sagar K. Shah, Subrato K. De, Mark Bapst, Dineel D. Sule, George Michael Milikich
  • Publication number: 20160117182
    Abstract: A content processing device and corresponding method for processing source code are disclosed. The method may include receiving source code with a virtual machine operating on a hardware platform with an inherent address-pointer-bit-width and generating, from the source code, executable code that includes internal address pointers to objects in the virtual machine heap. One or more runtime conditions may be monitored and a size of a bit-width for the internal address pointers in the virtual machine may be adjusted, with or without associated changes to create optimized layout of the objects in the virtual machine heap, based upon one or more runtime conditions.
    Type: Application
    Filed: October 27, 2014
    Publication date: April 28, 2016
    Inventors: Subrato K. De, Derek J. Conrod, Dineel D. Sule
  • Patent number: 9104475
    Abstract: A computing device and methods of operating the same are disclosed. The computing device may include a network interface that receives web content and a display that displays a displayable format of the web content. In addition, a plurality of browser processing components are included that carry out browser processing activity to generate a displayable format of the web content, and the computing device includes a browser management component that monitors at least one browser processing activity of a corresponding browser processing component and coordinates at least one browser management activity to either reduce the likelihood that the at least one browser management activity adversely affects performance of the plurality of browser processing components, or allow the at least one browser management activity to perform activities that leads to overall improvement of the browsing experience.
    Type: Grant
    Filed: April 7, 2011
    Date of Patent: August 11, 2015
    Assignee: Qualcomm Innovation Center, Inc.
    Inventors: Dineel D. Sule, Subrato K. De, Mark Bapst
  • Patent number: 9003381
    Abstract: A computing device comprising a JIT compiler, an application, and a JavaScript Engine. The computing device is adapted to receive at least one identified portion of a JavaScript source code, replace original context specific reference values in the JavaScript with one or more placeholders, and generate a first JIT copy of the code. The computing device is adapted to create a description of the original context specific reference values having one or more requirements, store the description, access runtime information related to the original context specific reference values, compare the runtime information to the stored description, obtain new context-specific reference values, replace/update the placeholders with the new context-specific reference values, generate a second JIT copy of the at least one identified portion of the JavaScript source code comprising the new context-specific reference values, and execute the second JIT copy in the new execution context.
    Type: Grant
    Filed: August 14, 2012
    Date of Patent: April 7, 2015
    Inventors: Derek J. Conrod, Subrato K. De, Dineel D. Sule
  • Patent number: 8880991
    Abstract: Methods and apparatus for processing scripting-language code in webpages are disclosed. The method includes obtaining scripting-language code that is utilized by a higher-priority webpage, compiling the scripting-language code to generate higher-priority compiled code objects, storing the higher-priority compiled code objects on a communication device, distinguishing the higher-priority compiled code objects from other compiled code objects that are stored on the communication device to delay the higher-priority compiled code objects from being removed from the communication device, and executing the higher-priority compiled code objects when the webpage is requested by the user. In many variations, this approach is not applied to all webpages visited, but only on certain webpages and scripts that are considered high priority, either implicitly or explicitly, based on a priority function that computes a multi-level priority from the history and past browser activity.
    Type: Grant
    Filed: April 21, 2011
    Date of Patent: November 4, 2014
    Assignee: Qualcomm Innovation Center, Inc.
    Inventors: Shyama Prasad Mondal, Subrato K. De, Dineel D. Sule, Mark Bapst, Kun Zhang
  • Publication number: 20140053143
    Abstract: A computing device comprising a JIT compiler, an application, and a JavaScript Engine. The computing device is adapted to receive at least one identified portion of a JavaScript source code, replace original context specific reference values in the JavaScript with one or more placeholders, and generate a first JIT copy of the code. The computing device is adapted to create a description of the original context specific reference values having one or more requirements, store the description, access runtime information related to the original context specific reference values, compare the runtime information to the stored description, obtain new context-specific reference values, replace/update the placeholders with the new context-specific reference values, generate a second JIT copy of the at least one identified portion of the JavaScript source code comprising the new context-specific reference values, and execute the second JIT copy in the new execution context.
    Type: Application
    Filed: August 14, 2012
    Publication date: February 20, 2014
    Applicant: Qualcomm Innovation Center, Inc.
    Inventors: Derek J. Conrod, Subrato K. De, Dineel D. Sule
  • Patent number: 8539463
    Abstract: A content processing device and corresponding method are disclosed. The content processing device includes a compiler front end to parse programming language source code into an high level intermediate representation and a detection component to detect high level constructs in the intermediate representation of the source code that satisfy constraints for parallel-merging high level constructs. And a parallel-merging component modifies the high level intermediate representation of the source code by parallel-merging the detected constructs to generate new high level parallel-merged constructs in a modified high-level intermediate representation of the source code that enable runtime operations of the detected constructs when finally lowered into processor instructions to be able to execute in parallel using the executable code generated from the modified intermediate representation.
    Type: Grant
    Filed: July 28, 2011
    Date of Patent: September 17, 2013
    Assignee: Qualcomm Innovation Center, Inc.
    Inventors: Subrato K. De, Dineel D. Sule, Kun Zhang
  • Publication number: 20130227354
    Abstract: A computing device adapted to receive at least one JavaScript, the computing device comprising a processor type and one or more architectural features. The at least one JavaScript comprises one or more first sections of the JavaScript and one or more second sections of the JavaScript. The one or more first sections of the JavaScript may be pre-compiled using the processor type or the one or more architectural features. The one or more second sections of the JavaScript may be sent to a JavaScript Compiler in source format. A JavaScript Engine may be adapted to execute the one or more first sections of the JavaScript and the subsequently compiled one or more second sections of the JavaScript, keeping elements of the scripting code proprietary, with the pre-compilation of the one or more first sections of the JavaScript eliminating run-time compilation and therefore providing performance benefits.
    Type: Application
    Filed: February 23, 2012
    Publication date: August 29, 2013
    Applicant: QUALCOMM INNOVATION CENTER, INC.
    Inventors: Sagar K. Shah, Subrato K. De, Mark Bapst, Dineel D. Sule, George Michael Milikich
  • Patent number: 8516360
    Abstract: A computing device comprising an application utilizing content comprising a plurality of JavaScripts, wherein the computing device compiles and executes a first of the plurality of JavaScripts substantially simultaneously as compiling and executing a second of the plurality of JavaScripts.
    Type: Grant
    Filed: August 24, 2011
    Date of Patent: August 20, 2013
    Assignee: Qualcomm Innovation Center, Inc.
    Inventors: Shyama Prasad Mondal, Subrato K. De, Dineel D. Sule, Mark Bapst, Tarun Nainani
  • Publication number: 20130055063
    Abstract: A computing device comprising an application utilizing content comprising a plurality of JavaScripts, wherein the computing device compiles and executes a first of the plurality of JavaScripts substantially simultaneously as compiling and executing a second of the plurality of JavaScripts.
    Type: Application
    Filed: August 24, 2011
    Publication date: February 28, 2013
    Applicant: QUALCOMM INNOVATION CENTER, INC.
    Inventors: Shyama Prasad Mondal, Subrato K. De, Dineel D. Sule, Mark Bapst, Tarun Nainani
  • Publication number: 20130031536
    Abstract: A content processing device and corresponding method are disclosed. The content processing device includes a compiler front end to parse programming language source code into an high level intermediate representation and a detection component to detect high level constructs in the intermediate representation of the source code that satisfy constraints for parallel-merging high level constructs. And a parallel-merging component modifies the high level intermediate representation of the source code by parallel-merging the detected constructs to generate new high level parallel-merged constructs in a modified high-level intermediate representation of the source code that enable runtime operations of the detected constructs when finally lowered into processor instructions to be able to execute in parallel using the executable code generated from the modified intermediate representation.
    Type: Application
    Filed: July 28, 2011
    Publication date: January 31, 2013
    Inventors: Subrato K. De, Dineel D. Sule, Kun Zhang
  • Publication number: 20120272132
    Abstract: Methods and apparatus for processing scripting-language code in webpages are disclosed. The method includes obtaining scripting-language code that is utilized by a higher-priority webpage, compiling the scripting-language code to generate higher-priority compiled code objects, storing the higher-priority compiled code objects on a communication device, distinguishing the higher-priority compiled code objects from other compiled code objects that are stored on the communication device to delay the higher-priority compiled code objects from being removed from the communication device, and executing the higher-priority compiled code objects when the webpage is requested by the user. In many variations, this approach is not applied to all webpages visited, but only on certain webpages and scripts that are considered high priority, either implicitly or explicitly, based on a priority function that computes a multi-level priority from the history and past browser activity.
    Type: Application
    Filed: April 21, 2011
    Publication date: October 25, 2012
    Applicant: QUALCOMM INNOVATION CENTER, INC.
    Inventors: Shyama Prasad Mondal, Subrato K. De, Dineel D. Sule, Mark Bapst, Kun Zhang
  • Publication number: 20120260181
    Abstract: A computing device and methods of operating the same are disclosed. The computing device may include a network interface that receives web content and a display that displays a displayable format of the web content. In addition, a plurality of browser processing components are included that carry out browser processing activity to generate a displayable format of the web content, and the computing device includes a browser management component that monitors at least one browser processing activity of a corresponding browser processing component and coordinates at least one browser management activity to either reduce the likelihood that the at least one browser management activity adversely affects performance of the plurality of browser processing components, or allow the at least one browser management activity to perform activities that leads to overall improvement of the browsing experience.
    Type: Application
    Filed: April 7, 2011
    Publication date: October 11, 2012
    Applicant: QUALCOMM INNOVATION CENTER, INC.
    Inventors: Dineel D. Sule, Subrato K. De, Mark Bapst