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: 9811452Abstract: 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: GrantFiled: February 1, 2016Date of Patent: November 7, 2017Assignee: QUALCOMM Innovation Center, Inc.Inventors: Dineel D. Sule, Subrato K. De, Wilson Kwan
-
Patent number: 9690551Abstract: 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: GrantFiled: March 28, 2016Date of Patent: June 27, 2017Assignee: QUALCOMM Innovation Center, Inc.Inventors: Subrato K. De, Zaheer Ahmad, Dineel D. Sule, Yang Ding
-
Patent number: 9569234Abstract: 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: GrantFiled: October 27, 2014Date of Patent: February 14, 2017Assignee: Qualcomm Innovation Center, Inc.Inventors: Subrato K. De, Derek J. Conrod, Dineel D. Sule
-
Publication number: 20160299746Abstract: 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: ApplicationFiled: March 28, 2016Publication date: October 13, 2016Inventors: Subrato K. De, Zaheer Ahmad, Dineel D. Sule, Yang Ding
-
Publication number: 20160239408Abstract: 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: ApplicationFiled: February 1, 2016Publication date: August 18, 2016Inventors: Dineel D. Sule, Subrato K. De, Wilson Kwan
-
Patent number: 9329879Abstract: 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: GrantFiled: February 23, 2012Date of Patent: May 3, 2016Assignee: Qualcomm Innovation Center, Inc.Inventors: Sagar K. Shah, Subrato K. De, Mark Bapst, Dineel D. Sule, George Michael Milikich
-
Publication number: 20160117182Abstract: 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: ApplicationFiled: October 27, 2014Publication date: April 28, 2016Inventors: Subrato K. De, Derek J. Conrod, Dineel D. Sule
-
Patent number: 9104475Abstract: 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: GrantFiled: April 7, 2011Date of Patent: August 11, 2015Assignee: Qualcomm Innovation Center, Inc.Inventors: Dineel D. Sule, Subrato K. De, Mark Bapst
-
Patent number: 9003381Abstract: 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: GrantFiled: August 14, 2012Date of Patent: April 7, 2015Inventors: Derek J. Conrod, Subrato K. De, Dineel D. Sule
-
Patent number: 8880991Abstract: 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: GrantFiled: April 21, 2011Date of Patent: November 4, 2014Assignee: Qualcomm Innovation Center, Inc.Inventors: Shyama Prasad Mondal, Subrato K. De, Dineel D. Sule, Mark Bapst, Kun Zhang
-
Publication number: 20140053143Abstract: 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: ApplicationFiled: August 14, 2012Publication date: February 20, 2014Applicant: Qualcomm Innovation Center, Inc.Inventors: Derek J. Conrod, Subrato K. De, Dineel D. Sule
-
Patent number: 8539463Abstract: 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: GrantFiled: July 28, 2011Date of Patent: September 17, 2013Assignee: Qualcomm Innovation Center, Inc.Inventors: Subrato K. De, Dineel D. Sule, Kun Zhang
-
Publication number: 20130227354Abstract: 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: ApplicationFiled: February 23, 2012Publication date: August 29, 2013Applicant: QUALCOMM INNOVATION CENTER, INC.Inventors: Sagar K. Shah, Subrato K. De, Mark Bapst, Dineel D. Sule, George Michael Milikich
-
Patent number: 8516360Abstract: 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: GrantFiled: August 24, 2011Date of Patent: August 20, 2013Assignee: Qualcomm Innovation Center, Inc.Inventors: Shyama Prasad Mondal, Subrato K. De, Dineel D. Sule, Mark Bapst, Tarun Nainani
-
Publication number: 20130055063Abstract: 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: ApplicationFiled: August 24, 2011Publication date: February 28, 2013Applicant: QUALCOMM INNOVATION CENTER, INC.Inventors: Shyama Prasad Mondal, Subrato K. De, Dineel D. Sule, Mark Bapst, Tarun Nainani
-
Publication number: 20130031536Abstract: 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: ApplicationFiled: July 28, 2011Publication date: January 31, 2013Inventors: Subrato K. De, Dineel D. Sule, Kun Zhang
-
Publication number: 20120272132Abstract: 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: ApplicationFiled: April 21, 2011Publication date: October 25, 2012Applicant: QUALCOMM INNOVATION CENTER, INC.Inventors: Shyama Prasad Mondal, Subrato K. De, Dineel D. Sule, Mark Bapst, Kun Zhang
-
Publication number: 20120260181Abstract: 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: ApplicationFiled: April 7, 2011Publication date: October 11, 2012Applicant: QUALCOMM INNOVATION CENTER, INC.Inventors: Dineel D. Sule, Subrato K. De, Mark Bapst