G06F9/44594

Method, device and computer program product for storage management

Techniques perform storage management. In accordance with such techniques, in response to determining that there is an abnormal process in a process group of an application, and a first size of storage space occupied by the abnormal process exceeds a first threshold, an abnormal process is terminated. A second size of storage space occupied by other processes than the abnormal process in the process group after the abnormal process is terminated is determined. In response to the second size exceeding a second threshold, at least one process in the process group to reduce the second size is terminated, where the at least one process is different from the abnormal process.

Resource management with dynamic resource policies

A method and apparatus of a device for resource management by using a hierarchy of resource management techniques with dynamic resource policies is described. The device terminates several misbehaving application programs when available memory on the device is running low. Each of those misbehaving application programs consumes more memory space than a memory consumption limit assigned to the application program. If available memory on the device is still low after terminating those misbehaving application programs, the device further sends memory pressure notifications to all application programs. If available memory on the device is still running low after sending the memory pressure notifications, the device further terminates background, idle, and suspended application programs. The device further terminates foreground application programs when available memory on the device is still low after terminating the background, idle, and suspended application programs.

MACHINE LEARNING BASED SOFTWARE TESTING ORCHESTRATION
20230073760 · 2023-03-09 ·

A method may include applying to at least a portion of historical runtimes associated with each of a plurality of tests included in a test suite, a machine learning model trained to identify one or more outlying runtime values. The portion of historical runtimes may include an n quantity of the most recent historical runtimes. An expected runtime for each test may be determined based on the portion of historical runtimes excluding the outlying runtime values. A schedule for executing each test in the test suite may be determined based on the expected runtime of each test. The test suite may be executed in accordance with the schedule. Moreover, the executing of the test suite may be monitored based on the expected runtime of each test. Related systems and computer program products are also provided.

ON-DEMAND LOADING OF DYNAMIC SCRIPTING LANGUAGE CODE FOR REDUCED MEMORY USAGE
20230117105 · 2023-04-20 · ·

A computer-implemented method and system for reducing the amount of memory space required to store applications written in dynamic scripting languages loads a program module into memory and removes a category of program code, such as debug information or function definitions, from the program module. The method and system also receives a request for debug information, or a function call or query, and determines whether or not the corresponding program code is in memory. If not, then the location in storage is identified where the program module is stored, and another copy containing the corresponding program code is loaded into memory. The corresponding program code is located and copied into the program module in memory, and a response is provided to the request.

Transfer via transaction app

Systems and methods may generally include sending an executable application, which when executed, automatically causes a monetary transfer. An example method may include performing, at a first user device, a handshake with a second user device, receiving, during the handshake, an operating capability of the second user device, and configuring, based on the operating capability of the second user device, an executable application, which when executed, automatically causes a monetary transfer to occur. The configured executable application may be sent to the second user device for execution.

Logically splitting object code into modules with lazy loading of content

A method for receiving a first portion of object code, analyzing a first portion of object code in a static manner to determine a call tree hierarchy, dividing, by a synthetic compiler, the first portion of object code into a plurality of modules; and starting to run the first portion of object code to start a runtime phase, with the running of the first portion of the object code including: (i) lazy loading of the modules of the plurality of modules of the first portion of object code, and/or (ii) eager unloading of the modules of the plurality of modules of the first portion of object code.

COMPUTATIONAL PIPELINES FOR COMPUTATIONAL STORAGE DEVICES
20220318160 · 2022-10-06 ·

The technology disclosed herein provides a method including generating, at a PCIe interface, a functional capability table associating a plurality of computational functionalities (CFs) with a plurality of computational storage devices (CSDs) communicatively connected to each other via the PCIe interface, communicating the functional capability table to each of the plurality of CSDs, receiving, at a first of the plurality of CSDs (CSD1), a request for a computational process including the plurality of CFs, determining that a first of the CFs (CF1) is associated with the CSD1 and a second of the CFs (CF2) is associated with a CSD2, requesting a computational program memory (CPM2) at the CSD2 and performing the CF1 at CSD1.

Application Keepalive Method and Apparatus, and Electronic Device
20230147061 · 2023-05-11 ·

An application keepalive method includes, when a foreground application run by the electronic device is switched from a first application to a second application, a callback probability of the second application relative to the first application is obtained, and when the callback probability of the second application relative to the first application is greater than a preset threshold, a keepalive priority of the first application is increased when the first application is used as a background application. When system resources are insufficient, the electronic device ends a process of at least one background application in ascending order of keepalive priorities to release system resources.

Machine learning based software testing orchestration

A method may include applying to at least a portion of historical runtimes associated with each of a plurality of tests included in a test suite, a machine learning model trained to identify one or more outlying runtime values. The portion of historical runtimes may include an n quantity of the most recent historical runtimes. An expected runtime for each test may be determined based on the portion of historical runtimes excluding the outlying runtime values. A schedule for executing each test in the test suite may be determined based on the expected runtime of each test. The test suite may be executed in accordance with the schedule. Moreover, the executing of the test suite may be monitored based on the expected runtime of each test. Related systems and computer program products are also provided.

LOCAL TO REMOTE APPLICATION SWITCHING
20230195507 · 2023-06-22 ·

A system and method for switching from a locally executing application to a remotely executing application. A method includes: detecting a launch of an application on a computing device, the application being executable locally on the computing device; rendering an element in a user interface presented within a display of the computing device, the element configured to substitute the application with a corresponding application that executes on a remote computing device; and in response to input received on the element, launching the corresponding application on the remote computing device and terminating execution of the application on the computing device.