Patents Issued in April 2, 2020
-
Publication number: 20200104217Abstract: A method, system and computer program product for achieving activity centric computing. An activity (e.g., opening an application, opening an electronic communication, initiating a printing action, initiating a browsing session) performed by a user on a computing device is detected. In response to detecting the activity, the runtime environment is captured and the session workflow associated with the detected activity is recorded. The session workflow refers to the events performed by the user on the computing device in connection with performing an activity (e.g., application usage, web browsing) on the computing device. The captured runtime environment and the recorded session workflow associated with the detected activity are stored in a portable container. After receiving an indication to share the activity, an image of the container is created and stored in a repository to be shared among users to replay the session workflow associated with the activity.Type: ApplicationFiled: October 2, 2018Publication date: April 2, 2020Inventors: Nitin S. Jadhav, Shailendra Moyal, Akash U. Dhoot
-
Publication number: 20200104218Abstract: A method and system for reliably restoring virtual machines. Specifically, the method and system disclosed herein enable virtual machine recovery, on a target computing system, indirectly through a connection to a central administration point. When the central administration point becomes unreachable, thereby interrupting the virtual machine recovery process, the method and system disclosed herein further facilitate directly connecting with the target computing system (bypassing the central administration point) in order to continue and complete the virtual machine recovery process.Type: ApplicationFiled: September 27, 2018Publication date: April 2, 2020Inventors: Dening Xu, Paloth Parambil Shahid, Mohammed Samad
-
Publication number: 20200104219Abstract: A non-volatile storage apparatus receives first data from an entity external to the non-volatile storage apparatus, combines the first data with other data being stored in the non-volatile storage apparatus to create combined data, performs a programming process to program the first data into a first location, determines that the programming process failed, intentionally corrupts the first data programmed into the first location, recovers the first data from the combined data, and reprograms the recovered first into a second location.Type: ApplicationFiled: March 22, 2019Publication date: April 2, 2020Applicant: SANDISK TECHNOLOGIES LLCInventors: Daniel Linnen, Ashish Ghai, Khanfer Kukkady
-
Publication number: 20200104220Abstract: In some examples, a method includes identifying, via the use of a Representational State Transfer (REST) Application Programming Interface (API) call, a modification of persistent data for a Cloud Management Platform (CMP); storing, in a persistent log for the CMP, information about the data modification, including an operation that modified the data, a component of the CMP that modified the data, and the time of modification; determining, as a result of a failure of the CMP, a restoration point for the CMP based on the persistent log; and restoring the CMP to the determined restoration point using an independent restoration system of the component that modified the data.Type: ApplicationFiled: September 27, 2018Publication date: April 2, 2020Inventors: Jyoti Ranjan, Unmesh Gurjar, Aiswarya Sundaran
-
Publication number: 20200104221Abstract: A method and apparatus for programming a one-time programmable (OTP) memory device is disclosed that allows for resuming and recovering from an interrupted programming cycle (e.g. due to loss of power or user interaction). Upon re-initiation of a programming cycle with the same memory range, a programming controller may detect the memory address where interruption occurred, and resume programming from that address. If the programming interruption resulted in an incorrectly programmed word at the interrupted address, a word repair register may be mapped to the corrupted address to enable correction of that word. The remainder of the memory range may then be programmed normally.Type: ApplicationFiled: August 1, 2019Publication date: April 2, 2020Inventors: Michael A Kost, Bradley A Lambert, John P Tourish, Girish Subramaniam
-
Publication number: 20200104222Abstract: Systems and methods are provided herein for server cluster environment management and failure recovery therein. Clusters of a cluster server environment are monitored by a resource manager. The resource manager maintains a standby server pool of servers from the server cluster environment. A cluster monitor monitors the clusters of servers and automatically detects server and cluster failures. An optimal recovery server from among the standby server pool is identified based on the configuration information of the failing server or the failing cluster. The identified optimal recovery server is added to the failing cluster or the cluster with the failing server, and configured based on the stored configuring information of the failed server or the failed cluster.Type: ApplicationFiled: September 28, 2018Publication date: April 2, 2020Inventors: Balaji Ramamoorthi, Siva Subramaniam Manickam, Vinnarasu Ganesan, Thavamaniraja Sakthivei
-
Publication number: 20200104223Abstract: Method and apparatus for a system to detect, address, and resolve defects, disfunctions, and inefficiencies in a distributed data environment. One or more diagnostics monitor specific operating parameters of specific services operating within the distributed data environment. When the diagnostic detects a service operating outside of a pre-determined threshold, an alert message is issued. Appropriate responses to the alert message assures that the system will maintain high availability protocol and will operate efficiently.Type: ApplicationFiled: October 31, 2019Publication date: April 2, 2020Inventors: Todd Lowney, Velmurugan Vinayakam, Frederick L. Anderson
-
Publication number: 20200104224Abstract: An anomaly detection device according to the embodiment includes a prediction unit and an anomaly score calculation unit. The prediction unit performs a process to obtain, at each time step of the time series data of m dimensions, distribution parameters required to express a continuous probability distribution representing a distribution state of predicted values that can be obtained at a time step t of the time series data of m dimensions. The anomaly score calculation unit performs a process to calculate, using distribution parameters obtained by the prediction unit, an anomaly score corresponding to an evaluation value representing evaluation of a magnitude of anomaly in an actual measurement value at the time step t of time series data of m dimensions.Type: ApplicationFiled: September 25, 2019Publication date: April 2, 2020Applicants: Kabushiki Kaisha Toshiba, Toshiba Digital Solutions CorporationInventor: Toshiyuki Katou
-
Publication number: 20200104225Abstract: Embodiments of the invention provide a management console enabling monitoring of distributed components of a process control application. The management console includes a management console window that can be customized according to one or more user-defined software code modules that interface to data sources to populate views supported by the console window. The invention further includes a language and method of composing blocks of executable code within the management console that provide the capability to run many analyses simultaneously. The console window includes a set of view templates including controls for manipulating graphically displayed representations of data rendered by the distributed components, and an interface for exchanging requests and data with an extensible set of software modules that provide data links to one or more distributed data-linked components. The set of software modules also define the customizable portions of the view rendered by the console window.Type: ApplicationFiled: September 4, 2019Publication date: April 2, 2020Inventors: Brian Kenneth Erickson, Greg C. Clinton, Vinay T. Kamath, Abhijit Manushree
-
Publication number: 20200104226Abstract: A log augmentation system is provided for augmenting log management in a distributed micro-services environment. The log augmentation system includes a trigger device for triggering an augmentation process responsive to micro-service related events and a context of the micro-service related events. The log augmentation system further includes an augmentation rules database with rule management components for determining an augment direction, an augmentation target, and an augmentation correlation relating to the distributed micro-services. The log augmentation system also includes a coordinator for coordinating the augmentation process in the distributed micro-service using a rule-based decision approach. The log augmentation system additionally includes a labeler for applying a set of labels to augment log entries responsive to instructions from the coordinator derived from results of the rule-based decision approach used by the coordinator.Type: ApplicationFiled: September 27, 2018Publication date: April 2, 2020Inventors: Lin Yang, Yuan Wang, Guang Cheng Li, Jing Min Xu, Jian Ma, Xiao Xi Liu
-
Publication number: 20200104227Abstract: Systems, methods, and computer-readable media for data protection management are provided. Failure notifications corresponding to backup failures of client servers in a healthcare facility are received and a dashboard associated with the backup failures is provided. The dashboard comprises user information that identifies users assigned to each backup failure. In embodiments, the dashboard enables a user to update a status of a backup failure and add, access, and modify records corresponding to a backup failure. In some embodiments, the dashboard is integrated with a service management application that enables the user to create a service request from the dashboard. A report corresponding to the dashboard is generated and communicated to a leadership team. The report includes statistics corresponding to backup failures addressed by each associate and backup failures identified per region or unit of a healthcare facility.Type: ApplicationFiled: December 3, 2019Publication date: April 2, 2020Inventors: Buyyarapyu Kishore, Akkaladevi Vijay Krishna, Jagadish Mohith, Ramesh Monisha, Nese Manjunatha, Ravishankar Nagesh
-
Publication number: 20200104228Abstract: Systems and techniques are provided for asynchronous self-proving transactions. A first resource tracking system may receive an executable script from a first computing device. The first resource tracking system may execute the executable script to generate transfer instructions. The first resource tracking system may implement a transfer based on the transfer instructions. The first resource tracking system may receive a call to the executable script including proof of a transfer on a second resource tracking system from a second computing device. The first resource tracking system may execute the executable script to generate second transfer instructions in response to the call to the executable script. The resource tracking system may implement a second transfer based on the second transfer instructions.Type: ApplicationFiled: September 27, 2018Publication date: April 2, 2020Inventor: Ethan Mac Brough
-
Publication number: 20200104229Abstract: Disclosed herein is a computer implemented method and system for analyzing load responsive behavior of infrastructure components in an electronic environment for proactive management of the infrastructure components. Transaction data on multiple application transactions is collected. Load patterns are identified from the collected transaction data for generating load profiles. Data on infrastructure behavior in response to the application transactions is collected. Infrastructure behavior patterns are identified from the infrastructure behavior data for generating behavior profiles. The generated load profiles and the generated behavior profiles are correlated to create a load responsive behavior model. The created load responsive behavior model predicts behavior of the infrastructure components for different load patterns. A live data stream from current application transactions is analyzed using the load responsive behavior model to determine current load responsive behavior.Type: ApplicationFiled: August 13, 2019Publication date: April 2, 2020Inventor: Padmanabhan Desikachari
-
METHODS, APPARATUSES, AND SYSTEMS FOR WORKFLOW RUN-TIME PREDICTION IN A DISTRIBUTED COMPUTING SYSTEM
Publication number: 20200104230Abstract: A method, apparatus and computer program product predict run-time to completion of workflows executing in a shared multi-tenant distributed compute clusters. The method, apparatus and computer program product receive a MapReduce workflow. The MapReduce workflow includes one or more MapReduce jobs for execution.Type: ApplicationFiled: September 28, 2018Publication date: April 2, 2020Inventors: Love HASIJA, Piyush GUPTA -
Publication number: 20200104231Abstract: A computer-implemented method according to one embodiment includes simulating, for a predetermined time period, output of a first task that periodically runs within a system to create a simulated output, comparing the simulated output to actual output of the first task for the predetermined time period, and generating an alert in response to determining that the simulated output does not match the actual output for the predetermined time period.Type: ApplicationFiled: September 27, 2018Publication date: April 2, 2020Inventors: Max Vigderovich, Yan Lindvor, Dan Ravid, Nadav Parag, Assaf Goren
-
Publication number: 20200104232Abstract: Automated determination of web page rendering performance techniques and systems are described. In one example, a web page including multiple user-interactive elements that can be selected or navigated via user input is received. A frame rendering system is employed to automatically identify the user-interactive elements and generate scripts to simulate user input at the user-interactive elements. The generated scripts are then used to simulate user input at the user-interactive elements. The scripts may be generated to simulate user interaction via a variety of different device types, and under a variety of different network conditions. During the simulation, a rendering performance score for the web page is generated by monitoring rendering performance relative to a threshold rendering rate.Type: ApplicationFiled: September 28, 2018Publication date: April 2, 2020Applicant: eBay Inc.Inventors: Senthil Kumar Padmanabhan, Srikanth Rentachintala, Kandakumar Doraisamy, Namrata Mummaneni
-
Publication number: 20200104233Abstract: Techniques are provided for system operational analytics using normalized likelihood scores. In one embodiment, an exemplary method comprises: obtaining data from data sources associated with a monitored system; applying at least one function to the log data to obtain a plurality of time-series counters for a plurality of distinct features within the data; processing the plurality of time-series counters using at least one machine learning model to obtain a plurality of log likelihood values representing a behavior of the monitored system over time; determining a z-score for each of the plurality of log likelihood values over a predefined short-term time window; monitoring a distribution of the z-scores for the plurality of log likelihood values over a predefined long-term time window to map the z-scores to percentile values; and mapping the percentile values to a health score for the monitored system based on of predefined percentile ranges and a transformation function.Type: ApplicationFiled: September 28, 2018Publication date: April 2, 2020Inventors: Shiri Gaber, Ohad Arnon
-
Publication number: 20200104234Abstract: Presented are concepts for processing an event log. Once such concept obtains an event log comprising a log of event occurrences for an executed process. It also obtains an events embedding model representative of relationships between a plurality of events of one or more processes. Based on the events embedding model, repeating events in the event log are clustered into one or more groups, and each of the one or more groups are associated with a respective identifier. Repeating events in the event log are then replaced with the identifier associated with the group that the repeating event is a member of.Type: ApplicationFiled: September 25, 2019Publication date: April 2, 2020Inventor: Hongchao NIE
-
Publication number: 20200104235Abstract: A system for evaluating and facilitating customized source code based on the usability guidelines using a usability code pattern analysis is provided. The system includes a decompile module, a guideline loader module, an inspection module, a validation module, a recommendation module, and one or more databases. The system obtains the input package from the user computing device to generate customized the usability code pattern for the input package by decompiling, inspecting and validating the input package against a validation case based on the usability guidelines. The input package layout files decompiled in XML and JAR file formats. The evaluation of the usability guideline is based on existing usability guidelines. The validation module validates the usability of the input package at each instance periodically using validation test cases.Type: ApplicationFiled: September 29, 2019Publication date: April 2, 2020Inventors: NEERAJ MATHUR, SAI ANIRUDH KARRE, Y Raghu Babu Reddy
-
Publication number: 20200104236Abstract: Embodiments disclosed herein relate to methods, systems, and computer programs for verifying that data incorporated into a computer program is current. The methods, systems, and computer programs compare a source identifier status code associated with the data to a current source identifier status code at the location where the data was obtained. The methods, systems, and computer programs include at least one validation function which determines the validity of the data according to selected parameters. If the source identifier status code and current source identifier status code match and the at least one validation function determines the data is valid, an executable computer program incorporating the data and one or more functions is produced as output.Type: ApplicationFiled: September 28, 2018Publication date: April 2, 2020Inventors: Christopher Taylor Creel, Mykel Alvis
-
Publication number: 20200104237Abstract: Tracing computer software program execution includes copying a software instruction at an instrumentation point within an original instruction stream, and replacing the software instruction with a jump instruction. The jump instruction branches to a multi-level trampoline that includes at least a first-level trampoline specific to an associated software tracing probe, and a second-level trampoline generic to plural software tracing probes. The first-level trampoline preserves partial CPU state and branches to the second-level trampoline, passing it software tracing probe identifying information. The second-level trampoline preserves a remainder of the CPU state, implements software tracing operations in accordance with the software tracing probe, restores the CPU state that it previously preserved, and returns program control to the first-level trampoline. Either the first-level or second-level trampoline may execute or emulate the original instruction.Type: ApplicationFiled: October 1, 2018Publication date: April 2, 2020Inventors: Naveen N. Rao, Ananth N. Mavinakayanahalli
-
Publication number: 20200104238Abstract: In an embodiment, a computer-implemented method for improving computer processing efficiency comprises using a main processing thread, in response to detecting an error in one or more function calls, tracing the one or more function calls at runtime and collecting stack trace data; and using a background processing thread, generating and displaying a function call tree based on the stack trace data.Type: ApplicationFiled: November 30, 2018Publication date: April 2, 2020Inventor: ALEX RADU
-
Publication number: 20200104239Abstract: A system and methods for efficiently injecting probes to executable code, which is then executed. Such probes may be used for example to examine the behavior of the code during execution. Optionally analyzing the behavior of the code during execution is used as part of a testing strategy for the code.Type: ApplicationFiled: September 26, 2019Publication date: April 2, 2020Inventors: Eran SHER, Alon EIZENMAN, Nadav YEHESKEL, Alon WEISS
-
Publication number: 20200104240Abstract: Described herein is a computer implemented method comprising accessing code coverage information, the code coverage information describing units of a particular version of a particular source code base and, for each unit, a code coverage status indicating whether the test suite covered, did not cover, or partially covered the unit. The code coverage information is then associated with the relevant source code by, for each unit described in the code coverage information, identifying the corresponding unit in the source code and associating the code coverage status as described in the code coverage information with the corresponding unit identified.Type: ApplicationFiled: September 28, 2018Publication date: April 2, 2020Inventor: Artem Koshelev
-
Publication number: 20200104241Abstract: According to some embodiments, systems and methods are provided, comprising receiving a first test script in a file as text; receiving the file at a Behavior Driven Development (BDD) test integration module; transforming one or more elements in the test script into one or more corresponding tokens; mapping each of the tokens to a respective code in a code repository; generating a second test script from the code; transforming the generated second test script into natural language; and executing the generated second test script. Numerous other aspects are provided.Type: ApplicationFiled: September 28, 2018Publication date: April 2, 2020Inventors: Bandita Talukdar, Smrithi Jayarajan
-
Publication number: 20200104242Abstract: Disclosed herein are system, method, and computer program product embodiments for automating component management in enterprise applications. An embodiment operates by receiving metadata associated with the enterprise application implementation and storing an inventory including at least a portion of the metadata. The system then determines one or more component dependencies of the enterprise application implementation based on the inventory and providing one or more recommendations for component installation or deletion based on the inventory and one or more component dependencies. The system also generates one or more testcases based on the inventory and the one or more component dependencies.Type: ApplicationFiled: October 1, 2018Publication date: April 2, 2020Applicant: Villani Analytics LLCInventor: Daniel Villani
-
Publication number: 20200104243Abstract: A method for displaying visual representation of test case coverage is described. A computer-implemented method can include receiving updates during test case runtime to generate a tree that represents a hierarchical ordering of test cases within related branches, providing a test coverage map of the tree in a form of a tree representation; receiving a request through interaction with a node of the tree representation, and performing operation corresponding to the request. In some cases, a tree may include nodes representing completed tests and nodes representing incomplete accepted tests. The nodes representing completed tests and the nodes representing incomplete accepted tests each include one or more tags that represent the environment in which a piece of functionality is tested. Percentage completion can be based on the number of completed test cases to the number of incomplete accepted test cases.Type: ApplicationFiled: August 20, 2019Publication date: April 2, 2020Inventor: Andrew Jonathan Robert LEE-SMITH
-
Publication number: 20200104244Abstract: Provided is a system and method for generating an internal automated test for testing a software application. In one example, the method may include one or more of storing, via an application persistency, a plurality of application events that occur during a reference execution of an application, retrieving the plurality of application events of the reference execution of the application and timestamps indicating respective times when the plurality of application events occurred, from the application persistency, and in response to receiving a request to test the application, executing a recreation of the plurality of application events in an order based on the timestamps to perform an automated test of the application.Type: ApplicationFiled: September 27, 2018Publication date: April 2, 2020Inventor: Dirk Christen
-
Publication number: 20200104245Abstract: A device may determine probabilities for test scripts associated with a test to be executed on a software element, where a respective probability is associated with a respective test script, indicates a likelihood that the respective test script will be unsuccessful in a test cycle, and is determined based on historical test results, associated with the software element, for the respective test script. The device may generate, based on the probabilities, a test script execution order, of the test scripts, for the test cycle, and may execute, based on the test script execution order, the test on the software element in the test cycle. The device may dynamically generate, based on results for the test in the test cycle, an updated test script execution order, and may execute, based on the updated test script execution order, the test on the software element in the test cycle.Type: ApplicationFiled: September 27, 2018Publication date: April 2, 2020Inventors: Anurag Dwarakanath, Neville Dubash, Sanjay Podder, Kishore P. Durg, Shrikanth N C
-
Publication number: 20200104246Abstract: A system can include a hardware processor and a memory communicably coupled to the hardware processor, the memory for storing data. The hardware processor is to identify, by a testing engine, a function call in computer code; identify, from an identifier of the function call, a test case stored in the memory and mapped to the function call, the test case comprising one or more testing scenarios to test the function call; test the computer code using the test case; and provide a report identifying a result of the testing of the computer code.Type: ApplicationFiled: October 1, 2018Publication date: April 2, 2020Applicant: CA, Inc.Inventor: Bhuvan Bhatt
-
Publication number: 20200104247Abstract: The present disclosure discloses method and system for uninterrupted automation testing of end-user application. The automated testing system receives information about test automation tool, test scenarios of the end-user application and screen flow for each of the test scenarios, from the user. The system then identifies objects, control objects for each of the screens present in each of the test scenarios by using NLP. The objects, control objects, automated steps and corresponding test data are stored in the database. During real time, pre-stored automation steps are executed, and modified screens are identified from failed execution logs. The system then identifies modified objects and control objects in the modified screen and updates object properties. The system also maps the modified control objects to corresponding next screen using NLP. The automation steps are updated for the modified objects, control objects and the test data based on the updated automation steps.Type: ApplicationFiled: November 20, 2018Publication date: April 2, 2020Inventors: Girish RAGHAVAN, Thamilchelvi PETERBARNABAS, Shaik ASHA
-
Publication number: 20200104248Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for testing open source software are disclosed. In one aspect, a method includes the actions of receiving, from a user device and by a presubmit check server system that is configured to perform presubmit checks on system software code updates, a system software code update and a request to perform a presubmit check on the system software code update. The actions further include requesting, from a system software code server system that is configured to store system software code, presubmit check code. The actions further include receiving, from the system software code server system, a presubmit check code module. The actions further include executing the presubmit check code module against the system software code update. The actions further include providing a report that indicates results of the presubmit check code module execution against the software code update.Type: ApplicationFiled: February 22, 2018Publication date: April 2, 2020Inventor: Keun Soo Yim
-
Publication number: 20200104249Abstract: An automated system is presented for unit testing an application in a mainframe execution environment. The system includes a test configurator, a stub setup routine and an interceptor routine. The test configurator is configured to receive and parse a test input file, where the test input file includes a record for a particular file accessed by the application using the given type of file system. Upon reading the record, the test configurator calls the stub setup routine. The stub setup routine is associated with the given type of file system and creates an object for the particular file in the mainframe execution environment, such that the object is instantiated from a class representing the given type of file system. The interceptor routine is accessible by the application. In response to a given command issued by the application for the given type of file system, the interceptor routine operates to interact with methods provided by the object.Type: ApplicationFiled: December 2, 2019Publication date: April 2, 2020Inventors: Glenn EVERITT, Douglas McLeod WATKINS, Loretta Ann WALBECK, Sheldon John SPURRELL, Steven James CARR
-
Publication number: 20200104250Abstract: A web server, such as one operating with a test agent in a database system receives a request for executing a test. The request is sent by a test master to an endpoint of the web server. In response to receiving the request by the web server, without exchanging information between the test agent and the test master, the test agent performs a series of operations as follows. A complete set of test steps is determined for the test. A complete set of test data used to execute the complete set of test steps is determined. The complete set of test steps for the test is executed with the complete set of test data. A final test execution status is generated for the test. The test agent can make the final test execution status for the test available for the test master to retrieve by way of the web server.Type: ApplicationFiled: December 4, 2019Publication date: April 2, 2020Inventors: Ashish Patel, Christopher Tammariello, Michael Bartoli, Tuhin Kanti Sharma, Vaishali Nandal
-
Publication number: 20200104251Abstract: A portion of a logical block address to physical block address (“L2P”) translation map may be identified. A last snapshot of the portion of the L2P translation map may be identified. One or more write operations may be determined, where the write operations are associated with logical block addresses of the portion of the L2P translation map. The write operations may have been performed after the last snapshot of the portion of the L2P translation map was stored. An address on the portion of the L2P translation map may be updated by a processing device based on the determined one or more write operations and the last snapshot of the portion of the L2P translation map.Type: ApplicationFiled: September 28, 2018Publication date: April 2, 2020Inventors: Daniel A. Boals, Byron D. Harris, Karl D. Schuh, Amy L. Wohlschlegel
-
Publication number: 20200104252Abstract: A Data Storage Device (DSD) includes a non-volatile memory configured to store data, and control circuitry configured to receive a memory access command from a host to access data in the non-volatile memory. A location is identified in the non-volatile memory for performing the memory access command using an Address Translation Layer (ATL) that has a finer logical-to-physical granularity than a logical-to-physical granularity of a logical block-based file system executed by the host or a granularity based on a memory Input/Output (IO) transaction size of a processor of the host. The non-volatile memory is accessed at the identified location to perform the memory access command.Type: ApplicationFiled: January 11, 2019Publication date: April 2, 2020Inventor: Sanjay Subbarao
-
Publication number: 20200104253Abstract: A method includes receiving a first write command from a first data source and determining a first data type associated with the first data source. The method also includes allocating a first page of a memory block to the first data source. The method also writing data to the first page based on the first write command and setting, on the first page, a data type of the first page based on the first data type. The method also includes receiving a read command from one of a plurality of data sources. The method also includes determining a data type associated with the one of the plurality of data sources. The method also includes determining whether to perform the read operation on the first page based on the data type of the first page and the data type associated with the one of the plurality of data sources.Type: ApplicationFiled: September 27, 2019Publication date: April 2, 2020Applicant: Western Digital Technologies, Inc.Inventor: Nir Perry
-
Publication number: 20200104254Abstract: A memory system includes: a memory device; and a controller suitable for performing: a free block management operation of detecting victim blocks onto which a garbage collection operation is to be performed to generate required free blocks; a garbage collection operation time management operation of calculating an estimated garbage collection operation time for the detected victim blocks; and a garbage collection operation period management operation of dynamically changing a garbage collection operation period based on the estimated garbage collection operation time and periodically performing a garbage collection operation based on the garbage collection operation period during a specific time, wherein the controller repeatedly performs, whenever an update period arrives, the free block management operation, the garbage collection operation time management operation, and the garbage collection operation period management operation.Type: ApplicationFiled: May 8, 2019Publication date: April 2, 2020Inventor: Jong-Min Lee
-
Publication number: 20200104255Abstract: Memory reclamation includes executing a process that has a plurality of objects, the objects being accessible via a plurality of references, at least some of the plurality of references being transient references, at least some of the plurality of references being persistent references; reaching a reclamation point at which a process state has no transient references, or has transient references only at known locations; and at the reclamation point, destructing objects that have no persistent references and no transient references.Type: ApplicationFiled: July 11, 2019Publication date: April 2, 2020Inventor: David R. Cheriton
-
Publication number: 20200104256Abstract: Memory bandwidth allocations for a plurality of tenants on a processor socket may be managed by determining a total memory bandwidth for the processor socket, determining a respective share of the total memory bandwidth for each tenant, and determining a respective dynamic memory bandwidth budget for the each tenant. The memory bandwidth allocations may be controlled based on the determined respective dynamic memory bandwidth budgets, wherein the each respective dynamic memory bandwidth budget supports utilizing the each respective share and supports sharing unused memory bandwidth of the each respective tenant with a different tenant included in the plurality of tenants.Type: ApplicationFiled: September 28, 2018Publication date: April 2, 2020Inventors: CONG XU, Karthick Rajamani
-
Publication number: 20200104257Abstract: In a method of operating a storage device including a plurality of disks, the plurality of disks is divided into a plurality of journal areas and a plurality of data areas, respectively. When a write command for target disks among the plurality of disks is received, a first write operation is performed to store target data to be written into journal areas of the target disks. The target disks are included in a same array. After the first write operation is completed, a second write operation is performed to store the target data into data areas of the target disks.Type: ApplicationFiled: June 18, 2019Publication date: April 2, 2020Inventors: YONG-MYUNG LEE, SEUNG-UK SHIN, JIN-YOUNG CHOI
-
Publication number: 20200104258Abstract: A method handles cache misses using a Scope Resolution Tag Buffer (SRTB). A cache controller assigns each data block in L2 cache with an n-bit value, where the n-bit value describes a quantity of occurrences in which the data block has been accessed, and where the cache controller increments the n-bit value in one or more data blocks in the first level memory cache each time the one or more data blocks are accessed. The cache controller evicts a particular data block from the L2 cache, and stores a particular data block address where the particular data block is now stored in a Scope Resolution Tag Buffer (SRTB). The information in the SRTB is used to locate which cache or memory contains the particular data block in the event of a subsequent cache miss in the L2 cache.Type: ApplicationFiled: September 28, 2018Publication date: April 2, 2020Inventors: SRINIVAS B. PURUSHOTHAM, NAVEEN MIRIYALU, VENKATA K. TAVVA
-
SYSTEM, METHOD, AND APPARATUS FOR SNAPSHOT PREFETCHING TO IMPROVE PERFORMANCE OF SNAPSHOT OPERATIONS
Publication number: 20200104259Abstract: A snapshot prefetcher to perform snapshot prefetching to improve performance of snapshot read operations. An apparatus embodiment includes a snapshot read tracking circuitry to track snapshot read requests made by a first processor core to read a plurality of cache lines, and to detect a snapshot read access stream based on the tracked snapshot read requests. A snapshot prefetch issuing circuitry of the apparatus to issue, based on the detected snapshot read access stream, one or more snapshot prefetch requests, including a first snapshot prefetch request to prefetch data from a first cache line stored in, and owned exclusively by, a first storage location outside the first processor core. The snapshot prefetch issuing circuitry further to store the prefetched data in a second storage location within the first processor core, wherein after the prefetch, exclusive ownership of the first cache line is to remain with the first storage location.Type: ApplicationFiled: September 28, 2018Publication date: April 2, 2020Inventors: Ren Wang, Lawrence C. Stewart, Binh Pham, Andrew Herdrich, Venkata Krishnan, Anil Vasudevan, Joseph Nuzman, Tsung-Yuan Tai -
Publication number: 20200104260Abstract: A method and apparatus for cache management and eviction polices using unsupervised reinforcement learning schemes is disclosed.Type: ApplicationFiled: June 26, 2019Publication date: April 2, 2020Inventors: Opher LIEBER, Ariel NAVON, Alex BAZARSKY, Shay BENISTY
-
Publication number: 20200104261Abstract: A method for operating a multi-transaction memory system, the method includes: storing Logical Block Address (LBA) information changed in response to a request from a host and a transaction identification (ID) of the request into one page of a memory block; and performing a transaction commit in response to a transaction commit request including the transaction ID from the host, wherein the performing of the transaction commit includes: changing a valid block bitmap in a controller of the multi-transaction memory system based on the LBA information.Type: ApplicationFiled: May 24, 2019Publication date: April 2, 2020Inventor: Yong-Seok OH
-
Publication number: 20200104262Abstract: A processing device is provided which includes memory comprising data cache memory configured to store compressed data and metadata cache memory configured to store metadata, each portion of metadata comprising an encoding used to compress a portion of data. The processing device also includes at least one processor configured to compress portions of data and select, based on one or more utility level metrics, portions of metadata to be stored in the metadata cache memory. The at least one processor is also configured to store, in the metadata cache memory, the portions of metadata selected to be stored in the metadata cache memory, store, in the data cache memory, each portion of compressed data having a selected portion of corresponding metadata stored in the metadata cache memory. Each portion of compressed data, having the selected portion of corresponding metadata stored in the metadata cache memory, is decompressed.Type: ApplicationFiled: September 28, 2018Publication date: April 2, 2020Applicant: Advanced Micro Devices, Inc.Inventors: Shomit N. Das, Matthew Tomei, David A. Wood
-
Publication number: 20200104263Abstract: A system includes a first memory component having a particular access size associated with performance of memory operations, a second memory component to store a logical to physical data structure whose entries map management segments to respective physical locations in the memory component, wherein each management segment corresponds to an aggregated plurality of logical access units having the particular access size, and a processing device, operably coupled to the memory component. The processing device can perform memory management operations on a per management segment basis by: for each respective management segment, tracking access requests to constituent access units corresponding to the respective management segment, and determining whether to perform a particular memory management operation on the respective management segment based on the tracking.Type: ApplicationFiled: October 2, 2018Publication date: April 2, 2020Inventors: Edward C. McGlaughlin, Gary J. Lucas, Joseph M. Jeddeloh
-
Publication number: 20200104264Abstract: A method stores data that handles page faults in an appropriate memory device based on a standing memory policy. One or more processors receive user requested memory buffer attributes that describe memory buffer attributes needed for various processes. The processor(s) store the user requested memory buffer attributes in an operating system virtual memory representation that describes various types of memories used by the system, create a standing memory policy based on the user requested memory buffer attributes, and store data on an appropriate memory device based on the standing memory policy. The processor(s) receive a page fault, which is based on the data being called by a process but not being currently mapped by a memory management unit (MMU) into a virtual address space of the process. The processor(s) then retrieve and return the data stored on the appropriate memory device in order to address the page fault.Type: ApplicationFiled: September 27, 2018Publication date: April 2, 2020Inventors: ANSHUMAN KHANDUAL, SARAVANAN SETHURAMAN, VENKATA K. TAVVA, ANAND HARIDASS
-
Publication number: 20200104265Abstract: A method, a computer system, and a computer program product to perform a directory lookup in a first level cache for requested cache line data. A first processor core can detect that the requested cache line data is not found in a plurality of sets of data in the first level cache and detect that existing cache line data stored in a least recently used data set stored in the first level cache is in an exclusive state, wherein the existing cache line data stored in the least recently used data set is to be overwritten by the requested cache line data retrieved from a second level cache. Furthermore, the first processor core can send a request for the requested cache line data and a physical address of the least recently used data set to the second level cache and execute additional instructions based on the first level cache and data retrieved from the second level cache.Type: ApplicationFiled: December 2, 2019Publication date: April 2, 2020Inventors: Deanna P.D. Berger, CHRISTIAN JACOBI, Martin Recktenwald, Yossi Shapira, Aaron Tsai
-
Publication number: 20200104266Abstract: Techniques and mechanisms for configuring services which variously facilitate data protection. In an embodiment, circuitry coupled to a memory comprises both a first circuit which calculates integrity information based on data, and a second circuit which evaluates data validity based on such integrity information. A configuration of the circuitry provides a combination of one or more services which is specific to a corresponding domain of the memory. With respect to accesses to the corresponding domain, the configuration prevents an access to the first circuit while an access to the second circuit is permitted. In another embodiment, a processor signals the circuitry to transition to another configuration which, with respect to accesses to the corresponding domain, permits access to both the first circuit and the second circuit.Type: ApplicationFiled: September 28, 2018Publication date: April 2, 2020Applicant: Intel CorporationInventors: Siddhartha Chhabra, Vedvyas Shanbhogue