Patents Issued in April 2, 2020
  • Publication number: 20200104217
    Abstract: 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: Application
    Filed: October 2, 2018
    Publication date: April 2, 2020
    Inventors: Nitin S. Jadhav, Shailendra Moyal, Akash U. Dhoot
  • Publication number: 20200104218
    Abstract: 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: Application
    Filed: September 27, 2018
    Publication date: April 2, 2020
    Inventors: Dening Xu, Paloth Parambil Shahid, Mohammed Samad
  • Publication number: 20200104219
    Abstract: 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: Application
    Filed: March 22, 2019
    Publication date: April 2, 2020
    Applicant: SANDISK TECHNOLOGIES LLC
    Inventors: Daniel Linnen, Ashish Ghai, Khanfer Kukkady
  • Publication number: 20200104220
    Abstract: 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: Application
    Filed: September 27, 2018
    Publication date: April 2, 2020
    Inventors: Jyoti Ranjan, Unmesh Gurjar, Aiswarya Sundaran
  • Publication number: 20200104221
    Abstract: 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: Application
    Filed: August 1, 2019
    Publication date: April 2, 2020
    Inventors: Michael A Kost, Bradley A Lambert, John P Tourish, Girish Subramaniam
  • Publication number: 20200104222
    Abstract: 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: Application
    Filed: September 28, 2018
    Publication date: April 2, 2020
    Inventors: Balaji Ramamoorthi, Siva Subramaniam Manickam, Vinnarasu Ganesan, Thavamaniraja Sakthivei
  • Publication number: 20200104223
    Abstract: 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: Application
    Filed: October 31, 2019
    Publication date: April 2, 2020
    Inventors: Todd Lowney, Velmurugan Vinayakam, Frederick L. Anderson
  • Publication number: 20200104224
    Abstract: 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: Application
    Filed: September 25, 2019
    Publication date: April 2, 2020
    Applicants: Kabushiki Kaisha Toshiba, Toshiba Digital Solutions Corporation
    Inventor: Toshiyuki Katou
  • Publication number: 20200104225
    Abstract: 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: Application
    Filed: September 4, 2019
    Publication date: April 2, 2020
    Inventors: Brian Kenneth Erickson, Greg C. Clinton, Vinay T. Kamath, Abhijit Manushree
  • Publication number: 20200104226
    Abstract: 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: Application
    Filed: September 27, 2018
    Publication date: April 2, 2020
    Inventors: Lin Yang, Yuan Wang, Guang Cheng Li, Jing Min Xu, Jian Ma, Xiao Xi Liu
  • Publication number: 20200104227
    Abstract: 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: Application
    Filed: December 3, 2019
    Publication date: April 2, 2020
    Inventors: Buyyarapyu Kishore, Akkaladevi Vijay Krishna, Jagadish Mohith, Ramesh Monisha, Nese Manjunatha, Ravishankar Nagesh
  • Publication number: 20200104228
    Abstract: 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: Application
    Filed: September 27, 2018
    Publication date: April 2, 2020
    Inventor: Ethan Mac Brough
  • Publication number: 20200104229
    Abstract: 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: Application
    Filed: August 13, 2019
    Publication date: April 2, 2020
    Inventor: Padmanabhan Desikachari
  • Publication number: 20200104230
    Abstract: 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: Application
    Filed: September 28, 2018
    Publication date: April 2, 2020
    Inventors: Love HASIJA, Piyush GUPTA
  • Publication number: 20200104231
    Abstract: 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: Application
    Filed: September 27, 2018
    Publication date: April 2, 2020
    Inventors: Max Vigderovich, Yan Lindvor, Dan Ravid, Nadav Parag, Assaf Goren
  • Publication number: 20200104232
    Abstract: 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: Application
    Filed: September 28, 2018
    Publication date: April 2, 2020
    Applicant: eBay Inc.
    Inventors: Senthil Kumar Padmanabhan, Srikanth Rentachintala, Kandakumar Doraisamy, Namrata Mummaneni
  • Publication number: 20200104233
    Abstract: 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: Application
    Filed: September 28, 2018
    Publication date: April 2, 2020
    Inventors: Shiri Gaber, Ohad Arnon
  • Publication number: 20200104234
    Abstract: 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: Application
    Filed: September 25, 2019
    Publication date: April 2, 2020
    Inventor: Hongchao NIE
  • Publication number: 20200104235
    Abstract: 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: Application
    Filed: September 29, 2019
    Publication date: April 2, 2020
    Inventors: NEERAJ MATHUR, SAI ANIRUDH KARRE, Y Raghu Babu Reddy
  • Publication number: 20200104236
    Abstract: 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: Application
    Filed: September 28, 2018
    Publication date: April 2, 2020
    Inventors: Christopher Taylor Creel, Mykel Alvis
  • Publication number: 20200104237
    Abstract: 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: Application
    Filed: October 1, 2018
    Publication date: April 2, 2020
    Inventors: Naveen N. Rao, Ananth N. Mavinakayanahalli
  • Publication number: 20200104238
    Abstract: 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: Application
    Filed: November 30, 2018
    Publication date: April 2, 2020
    Inventor: ALEX RADU
  • Publication number: 20200104239
    Abstract: 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: Application
    Filed: September 26, 2019
    Publication date: April 2, 2020
    Inventors: Eran SHER, Alon EIZENMAN, Nadav YEHESKEL, Alon WEISS
  • Publication number: 20200104240
    Abstract: 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: Application
    Filed: September 28, 2018
    Publication date: April 2, 2020
    Inventor: Artem Koshelev
  • Publication number: 20200104241
    Abstract: 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: Application
    Filed: September 28, 2018
    Publication date: April 2, 2020
    Inventors: Bandita Talukdar, Smrithi Jayarajan
  • Publication number: 20200104242
    Abstract: 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: Application
    Filed: October 1, 2018
    Publication date: April 2, 2020
    Applicant: Villani Analytics LLC
    Inventor: Daniel Villani
  • Publication number: 20200104243
    Abstract: 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: Application
    Filed: August 20, 2019
    Publication date: April 2, 2020
    Inventor: Andrew Jonathan Robert LEE-SMITH
  • Publication number: 20200104244
    Abstract: 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: Application
    Filed: September 27, 2018
    Publication date: April 2, 2020
    Inventor: Dirk Christen
  • Publication number: 20200104245
    Abstract: 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: Application
    Filed: September 27, 2018
    Publication date: April 2, 2020
    Inventors: Anurag Dwarakanath, Neville Dubash, Sanjay Podder, Kishore P. Durg, Shrikanth N C
  • Publication number: 20200104246
    Abstract: 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: Application
    Filed: October 1, 2018
    Publication date: April 2, 2020
    Applicant: CA, Inc.
    Inventor: Bhuvan Bhatt
  • Publication number: 20200104247
    Abstract: 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: Application
    Filed: November 20, 2018
    Publication date: April 2, 2020
    Inventors: Girish RAGHAVAN, Thamilchelvi PETERBARNABAS, Shaik ASHA
  • Publication number: 20200104248
    Abstract: 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: Application
    Filed: February 22, 2018
    Publication date: April 2, 2020
    Inventor: Keun Soo Yim
  • Publication number: 20200104249
    Abstract: 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: Application
    Filed: December 2, 2019
    Publication date: April 2, 2020
    Inventors: Glenn EVERITT, Douglas McLeod WATKINS, Loretta Ann WALBECK, Sheldon John SPURRELL, Steven James CARR
  • Publication number: 20200104250
    Abstract: 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: Application
    Filed: December 4, 2019
    Publication date: April 2, 2020
    Inventors: Ashish Patel, Christopher Tammariello, Michael Bartoli, Tuhin Kanti Sharma, Vaishali Nandal
  • Publication number: 20200104251
    Abstract: 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: Application
    Filed: September 28, 2018
    Publication date: April 2, 2020
    Inventors: Daniel A. Boals, Byron D. Harris, Karl D. Schuh, Amy L. Wohlschlegel
  • Publication number: 20200104252
    Abstract: 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: Application
    Filed: January 11, 2019
    Publication date: April 2, 2020
    Inventor: Sanjay Subbarao
  • Publication number: 20200104253
    Abstract: 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: Application
    Filed: September 27, 2019
    Publication date: April 2, 2020
    Applicant: Western Digital Technologies, Inc.
    Inventor: Nir Perry
  • Publication number: 20200104254
    Abstract: 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: Application
    Filed: May 8, 2019
    Publication date: April 2, 2020
    Inventor: Jong-Min Lee
  • Publication number: 20200104255
    Abstract: 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: Application
    Filed: July 11, 2019
    Publication date: April 2, 2020
    Inventor: David R. Cheriton
  • Publication number: 20200104256
    Abstract: 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: Application
    Filed: September 28, 2018
    Publication date: April 2, 2020
    Inventors: CONG XU, Karthick Rajamani
  • Publication number: 20200104257
    Abstract: 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: Application
    Filed: June 18, 2019
    Publication date: April 2, 2020
    Inventors: YONG-MYUNG LEE, SEUNG-UK SHIN, JIN-YOUNG CHOI
  • Publication number: 20200104258
    Abstract: 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: Application
    Filed: September 28, 2018
    Publication date: April 2, 2020
    Inventors: SRINIVAS B. PURUSHOTHAM, NAVEEN MIRIYALU, VENKATA K. TAVVA
  • Publication number: 20200104259
    Abstract: 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: Application
    Filed: September 28, 2018
    Publication date: April 2, 2020
    Inventors: Ren Wang, Lawrence C. Stewart, Binh Pham, Andrew Herdrich, Venkata Krishnan, Anil Vasudevan, Joseph Nuzman, Tsung-Yuan Tai
  • Publication number: 20200104260
    Abstract: A method and apparatus for cache management and eviction polices using unsupervised reinforcement learning schemes is disclosed.
    Type: Application
    Filed: June 26, 2019
    Publication date: April 2, 2020
    Inventors: Opher LIEBER, Ariel NAVON, Alex BAZARSKY, Shay BENISTY
  • Publication number: 20200104261
    Abstract: 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: Application
    Filed: May 24, 2019
    Publication date: April 2, 2020
    Inventor: Yong-Seok OH
  • Publication number: 20200104262
    Abstract: 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: Application
    Filed: September 28, 2018
    Publication date: April 2, 2020
    Applicant: Advanced Micro Devices, Inc.
    Inventors: Shomit N. Das, Matthew Tomei, David A. Wood
  • Publication number: 20200104263
    Abstract: 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: Application
    Filed: October 2, 2018
    Publication date: April 2, 2020
    Inventors: Edward C. McGlaughlin, Gary J. Lucas, Joseph M. Jeddeloh
  • Publication number: 20200104264
    Abstract: 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: Application
    Filed: September 27, 2018
    Publication date: April 2, 2020
    Inventors: ANSHUMAN KHANDUAL, SARAVANAN SETHURAMAN, VENKATA K. TAVVA, ANAND HARIDASS
  • Publication number: 20200104265
    Abstract: 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: Application
    Filed: December 2, 2019
    Publication date: April 2, 2020
    Inventors: Deanna P.D. Berger, CHRISTIAN JACOBI, Martin Recktenwald, Yossi Shapira, Aaron Tsai
  • Publication number: 20200104266
    Abstract: 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: Application
    Filed: September 28, 2018
    Publication date: April 2, 2020
    Applicant: Intel Corporation
    Inventors: Siddhartha Chhabra, Vedvyas Shanbhogue