11th week of 2016 patent applcation highlights part 44 |
Patent application number | Title | Published |
20160077885 | MANAGING RESOURCE COLLISIONS IN A STORAGE COMPUTE DEVICE - A storage compute device includes a data storage section that facilitates persistently storing host data as data objects. The storage compute device also includes two or more compute sections that perform computations on the data objects. A controller monitors resource collisions affecting a first of the compute sections. The controller creates a copy of at least one of the data objects to be processed in parallel at a second of the compute sections in response to the resource collisions | 2016-03-17 |
20160077886 | GENERATING WORKLOAD WINDOWS - A method for generating workload windows includes incrementing access counters for each block of a storage system during execution of a workload accessing the storage system. The method also includes determining an average input-output (IO) rate of the storage system based on the access counters. The method further includes determining whether to generate a new workload window based on the average IO rate, an expiring timer, and a predetermined range from an X value to a Y value. The X value is equal to a low threshold of the average IO rate, and the Y value is equal to a high threshold of the average IO rate. The method also includes generating the new workload window based on the determination. | 2016-03-17 |
20160077887 | Safe consolidation and migration - A method, apparatus and computer program product for program migration, the method comprising: receiving a target host and an application to be migrated to a target host; estimating a target load of the application to be migrated; generating a synthetic application which simulates a simulated load, the simulated load being smaller than the target load; loading the synthetic application to the target host; monitoring behavior of the target host, the synthetic application, or a second application executed thereon; subject to the behavior being satisfactory: if the simulated load is smaller than the target load, then repeating said generating, said loading and said monitoring, wherein said loading is repeated with increased load; and otherwise migrating the application to the target. | 2016-03-17 |
20160077888 | SYSTEM AND METHOD FOR SUPPORTING COOPERATIVE NOTIFICATION OFFLOADING IN A DISTRIBUTED DATA GRID - A system and method for cooperative notification offloading supports thread notification offloading in a multi-threaded messaging system such as a distributed data grid. Pending notifiers are maintained in a collection of pending notifiers. A signaling thread processes a first notifier in the collection of pending notifiers to wake a first thread. The first awoken thread processes additional notifiers in the collection of pending notifiers to wake additional threads. The additional awoken threads can process additional notifiers in a cycle until all pending notifiers in the collection are processed. Such cooperative notification offloading of notifier processing from the signaling thread improves performance of the signaling thread with respect to other tasks thereby improving performance of the signaling thread and the distributed data grid. | 2016-03-17 |
20160077889 | SYSTEM AND METHOD FOR SUPPORTING WAITING THREAD NOTIFICATION OFFLOADING IN A DISTRIBUTED DATA GRID - A system and method for waiting-thread notification offloading supports thread notification offloading in a multi-threaded messaging system such as a distributed data grid. Pending notifiers are maintained in a pending notifier collection. A service thread adds pending notifiers to the collection instead of signaling the notifiers on the service thread. An active thread associated with the service thread determines that it is ready to enter a wait state. Before entering the wait state or instead of entering the wait state, the active thread retrieves pending notifiers from the pending notifier collection, signals the retrieved pending notifiers, and wakes the waiting threads associated with the pending notifiers, thereby offloading the notifier signaling overhead from the service thread to the active thread. Such waiting-thread notification offloading of notifier processing from the service thread improves performance of the service thread with respect to other tasks thereby improving performance of the service thread and the multi-threaded messaging system. | 2016-03-17 |
20160077890 | INFORMATION PROCESSING DEVICE AND BARRIER SYNCHRONIZATION METHOD - An information processing device includes a plurality of barrier banks, and one or more processors including at least one of the plurality of barrier banks. Each of barrier banks includes one or more hardware threads and a barrier synchronization mechanism. The barrier synchronization mechanism includes a bottom unit having a barrier state, and a bitmap indicating that each of the one or more hardware threads has arrived at a synchronization point, and a top unit having a non-arrival counter indicating the number of barrier banks yet to be synchronized. The bottom unit notifies of bottom unit synchronization completion when all the one or more hardware threads have arrived at a barrier synchronization point. The non-arrival counter decrements its value by 1 upon receipt of the bottom unit synchronization completion, and the top unit sets the barrier state to a value indicating synchronization completion when the non-arrival counter decrements to 0. | 2016-03-17 |
20160077891 | HIGH PERFORMANCE LOCKS - Systems and methods of enhancing computing performance may provide for detecting a request to acquire a lock associated with a shared resource in a multi-threaded execution environment. A determination may be made as to whether to grant the request based on a context-based lock condition. In one example, the context-based lock condition includes a lock redundancy component and an execution context component. | 2016-03-17 |
20160077892 | Automatic Sensor Selection Based On Requested Sensor Characteristics - A computing device can include or receive data from one or more sensors. Each sensor provides data regarding the environment in which the computing device is located, or the manner in which the computing device is situated or present in the environment. The computing device also includes one or more programs that make use of data received from the sensors. A sensor system of the computing device presents a sensing priority interface that allows a program to request aggregated data from the sensors. The program provides, as a parameter of the interface, an indication of sensor characteristics that are to have priority. The sensor system determines, based on the sensors supported by the computing device and the indication provided by the program, which sensors to use to obtain the aggregated data. The sensor system activates the appropriate sensors, and returns the requested aggregated data to the requesting program. | 2016-03-17 |
20160077893 | API MATCHMAKING USING FEATURE MODELS - Software that uses machine logic based algorithms to help determine and/or prioritize an application programming interface's (API) desirability to a user based on how closely the API's terms of service (ToS) meet the users' ToS preferences. The software performs the following steps: (i) receiving a set of API ToS feature information that includes identifying information for at least one API and respectively associated ToS features for each identified API; (ii) receiving ToS preference information that relates to ToS related preferences for a user; and (iii) evaluating a strength of a match between each respective API identified in the API ToS feature information set and the ToS preference information to yield a match value for each API identified in the API ToS feature information set. The ToS features include at least a first ToS field. At least one API includes multiple, alternative values in its first ToS field. | 2016-03-17 |
20160077894 | COMMUNICATION INFRASTRUCTURE FOR VIRTUAL MACHINES - In an example embodiment, a communication is received from a software tool. The communication may be intended for a virtual machine and may contain an identification of a virtual file. A virtual file can then be retrieved using the identification. The virtual file defines a file socket, the file socket providing a communications channel for stream-based communications. Then the file socket can be established as a communications channel between the software tool and the virtual machine based on the virtual file. | 2016-03-17 |
20160077895 | PROFILE-DRIVEN MERGING OF API COMPONENTS - Software that utilizes machine logic-based algorithms to combine the Terms of Service (ToS) portions of multiple Application Programming Interfaces (APIs) by performing the following steps: (i) providing a first ToS portion of a first API, with the first ToS portion including a first ToS feature value for a first ToS feature; (ii) providing a second ToS portion of a second API, with the second ToS portion including a second ToS feature value for the first ToS feature; and (iii) merging, at least, the first ToS portion and the second ToS portion, according to a set of ToS merger rule(s) applied by machine logic, to generate a merged ToS. One merger rule combines at least the first ToS feature value and the second ToS feature value according to a set of operator(s) to generate a first merged ToS feature value included as the first ToS feature in the merged ToS. | 2016-03-17 |
20160077896 | Techniques for Render Pass Dependencies in an API - Techniques for passing dependencies in an application programming interface API includes identifying a plurality of passes of execution commands. For each set of passes, wherein one pass is a destination pass and the other pass is a source pass to each other, one or more dependencies, of one or more dependency types, are determined between the execution commands of the destination pass and the source pass. Pass objects are then created for each identified pass, wherein each pass object records the execution commands and dependencies between the corresponding destination and source passes. | 2016-03-17 |
20160077897 | Codeless Generation of APIs - Some embodiments provide a novel method of generating application programming interfaces (APIs) in a codeless manner. The method generates a schema description of a data storage (e.g., a relational database) with which an API-accessible object may have to exchange data (e.g., from which the object may have to read data and/or to which the object may have to write data) to process an API request during the execution of an application. Based on the generated schema description, the method constructs one or more data graphs, with each data graph representing one set of relationships between different sets of fields in the data storage. After generating the data graphs, the method generates a large number of possible API permutations by using the generated data graphs. After generating the large number of possible API permutations, the method presents the generated sample APIs so that a developer can select and customize one or more APIs while developing an application. | 2016-03-17 |
20160077898 | INTEGRATING OPERATING SYSTEMS - A method and apparatus for integration of operating systems solve the problem in the conventional techniques with low efficiency in switching among the operating systems. The techniques of the present disclosure firstly starts a first operating system and its agent process, and then starts a second operating system, wherein the second operating system may call the agent process to request the first operating system for resources required by the second operating system. The second operating system may directly request the first operating system for the needed resources, which realizes the coexistence of the first operating system and the second operating system without mutual switching between the operating systems. | 2016-03-17 |
20160077899 | HANDLING OF INPUTS IN A MULTI-PROCESS APPLICATION - Systems and methods for handling an event in an application are disclosed. An embedder application is executed via a primary application at a computing device. The embedder application is associated with an embedder process. The embedder application outputs an embedder visual output. The primary application receives a user input within a visual interface element associated with a guest process. The visual interface element is within the embedder visual output. The user input corresponds to an event to be handled. The event, is queued, via the primary application, for handling by the guest process. The queued event is dequeued, via the primary application, if the queued event is handled by the guest process within a threshold time period. The primary application signals for handling the queued event by the embedder process if the guest process crashes or in a case where the guest process is unresponsive during the threshold time period. | 2016-03-17 |
20160077900 | CHECKING UNDOABILITY OF AN API-CONTROLLED COMPUTING SYSTEM - The present invention generally relates to an application program interface (API)-controlled computing system ( | 2016-03-17 |
20160077901 | Dynamic Determination of Local and Remote API Calls - Some embodiments provide a system and method for dynamically determining whether to execute a function locally or remotely for an application operating on a first device. The method, while the application is operating, identifies a set of conditions the evaluation of which dynamically determines whether to (i) direct a second device to remotely process a function or (ii) locally process the function on the first device. The method evaluates the identified set of conditions on the first device. When the evaluation of the set of conditions corresponds to remote processing of the function, the method directs the second device to process the function and return a response to the first device. When the evaluation of the set of conditions corresponds to local processing of the function, the method processes the function on the first device. | 2016-03-17 |
20160077902 | METHOD OF PROCESSING APIs - Some embodiments of the invention provide a novel server for processing application programming interface (API) requests. In some embodiments, the API server is written in JavaScript. For example, in some embodiments, the API-accessible objects of this server are each defined in terms of a JavaScript file and a JSON (JavaScript Object Notation) file. At runtime, a runtime processor instantiates each JavaScript object from its associated JavaScript and JSON files. Once instantiated, the JavaScript object can be used to process API requests that refer to the JavaScript object. Some embodiments use novel JSON file structures that allow these embodiments to define rich JavaScript models. | 2016-03-17 |
20160077903 | Selective Sampling of Data Stored in Nonvolatile Memory - Data stored in a nonvolatile memory is selectively sampled based on write-erase cycle counts of blocks. Blocks with the lowest write-erase cycle counts are sampled to determine an error rate which is compared with a limit. If the error rate exceeds the limit then the sample is expanded to include blocks with the next lowest write-erase cycle counts. | 2016-03-17 |
20160077904 | INTEGRATED CIRCUIT AND METHOD OF DETECTING A DATA INTEGRITY ERROR - An integrated circuit comprises a write bus coupled to a register for storing control data. A storage unit is arranged to store reference signature data encoding a reference collective state of the register. First logic circuitry generates actual signature data encoding the actual collective state of the register. Second logic circuitry is coupled to the storage unit, receives the actual signature data and compares the actual signature data with the reference signature data. The second logic circuitry comprises an alert output to provide an alert signal in response to the comparison identifying a difference between the actual signature data and the reference signature data, thereby ensuring detection of a data integrity error in respect of the register. An alert inhibitor comprises a control input and is responsive to the control input and arranged to inhibit selectively onward propagation of the alert signal from the alert output. | 2016-03-17 |
20160077905 | Low Power Debug Architecture For System-On-Chips (SoCs) And Systems - In an embodiment, a debug architecture for a processor/System on Chip (SoC) etc., includes a central debug unit to receive one or more functional debug signals, the central debug unit further configured to receive debug information from at least one firmware source, at least one software source, and at least one hardware source, and to output compressed debug information; a system trace module to receive the compressed debug information and to time stamp the compressed debug information; a parallel trace interface to receive the time stamped compressed debug information and to parallelize the time stamped compressed debug information; and an output unit to output the parallelized time stamped compressed debug information on one of a plurality of output paths. Other embodiments are described and claimed. | 2016-03-17 |
20160077906 | HIGH VOLTAGE FAILURE RECOVERY FOR EMULATED ELECTRICALLY ERASABLE (EEE) MEMORY SYSTEM - The present disclosure provides methods and circuits for managing failing sectors in a non-volatile memory. A record address and a read control signal are received, where the record address identifies a location in the non-volatile memory. The record address is compared with a plurality of dead sector addresses, where the dead sector addresses correspond to a subset of sectors located in the non-volatile memory. Data located at the record address is determined to be invalid in response to a combination of a first detection that the record address matches one of the dead sector addresses and a second detection that the read control signal indicates a read operation is requested to be performed on the non-volatile memory. | 2016-03-17 |
20160077907 | NETWORK PROCESSING TRACING DEVICE, NETWORK PROCESSING TRACING METHOD, AND STORAGE MEDIUM - A network processing tracing device includes a network processing unit which carries out network processing on a packet received via a network, an error detection unit which detects occurrence of an error in the network processing, a trace processing unit which acquires, when occurrence of the error is detected by the error detection unit, the packet being processed by the network processing in which occurrence of the error is detected, and trace information being used in the network processing, and an associating unit which associates the packet acquired by the trace processing unit, and the trace information acquired together with the packet with each other. | 2016-03-17 |
20160077908 | FAILURE INTERVAL DETERMINATION - For failure interval determination, a determination module determines a failure interval for transactions in a transaction queue based on a number of processed transactions. A transaction timeout module fails a first transaction in response to the first transaction not processing within the failure interval. | 2016-03-17 |
20160077909 | WATCHDOG CIRCUIT, POWER IC AND WATCHDOG MONITOR SYSTEM - A watchdog timer circuit for use in microcomputer monitor systems is disclosed. This circuit includes a timer circuit responsive to receipt of a count clock signal for counting it up, and a timer control circuit which loads an externally inputted data signal (stn) in sync with a timer refresh instruction (prun) and holds therein a sequentially loaded latest multi-bit data signal as reference data. When the reference data agrees with a predefined pattern and simultaneously another prespecified condition is met, the timer control circuit interrupts the clock signal counting operation of the timer circuit. During interruption of the counting operation, when the reference data does not agree with the predefined pattern or when the above-stated another prespecified condition becomes unsatisfied, the control circuit allows the timer circuit to restart the clock signal counting operation. | 2016-03-17 |
20160077910 | SUPPORTABILITY FRAMEWORK FOR MOBILE SOFTWARE APPLICATIONS - A system and a method for providing software supportability involve a server receiving a first electronic record from a client application on a mobile computing device. The first electronic record describes activity that occurred at the mobile computing device during a request sent from the client application to the server. The server creates a second electronic record that describes activity that occurred at the server while processing the request. The first electronic record and the second electronic record are stored in association with each other and can be analyzed to determine issues with performance or security. A diagnostic application, based on the stored first electronic record and the second electronic record, identifies at least one faulty component at the server or the mobile computing device to correct the identified at least one faulty component. | 2016-03-17 |
20160077911 | METHODS, SYSTEMS, AND COMPUTER READABLE MEDIA FOR ADDRESS AND DATA INTEGRITY CHECKING IN FLASH MEMORY OPERATIONS - Methods, systems, and computer readable media for address and data integrity checking in flash memory operations are disclosed. One method includes, at a storage controller, generating, for an address unit, an address parity unit. The method further includes generating a command sequence including the address unit, the address parity unit, and an operation command specifying an operation to be performed on a flash memory array. The method further includes providing the command sequence to a flash memory device that includes the non-volatile memory array. The method further includes performing, by the flash memory device, an address integrity check on the address unit using the address parity unit. The method further includes determining whether or not to perform an operation specified by the command sequence based at least in part on a result of the address integrity check. | 2016-03-17 |
20160077912 | ENCODING SCHEME FOR 3D VERTICAL FLASH MEMORY - Techniques for encoding data for non-volatile memory storage systems are disclosed. In one particular embodiment, the techniques may be realized as a method including writing first data to the memory, reading the first data from the memory, analyzing the first read data such that the analyzing includes determining whether the read data includes an error, encoding second data based on the analyzing of the first data such that the second data is encoded to be written to a position adjacent to the error when it is determined that the read data includes the error, and writing the encoded second data to the memory at the position. | 2016-03-17 |
20160077913 | METHOD OF CONTROLLING NONVOLATILE MEMORY - According to an embodiment, The control method includes reading a plurality of first pages in parallel on the basis of respectively different operation parameters. each of the first pages is respectively included in a plurality of first blocks. Each of the operation parameters includes a read voltage. The control method includes performing error correction on each of read data, and selecting one operation parameter out of the plurality of different operation parameters based on a result of the error correction. | 2016-03-17 |
20160077914 | SOLID STATE STORAGE DEVICE AND ERROR CORRECTION METHOD THEREOF - An error correction method for a solid state storage device is provided. A controller of the solid state storage device issues plural slicing voltages to a flash memory. The flash memory issues a soft data to a soft decoder of the controller according to the plural slicing voltages. Firstly, the soft decoder receives the soft data, and performs an error correction process of the soft data according to a predetermined log-likelihood ratio (LLR) parameter set. If the error correction process of the soft data is not successfully completed according to the predetermined LLR parameter set, one LLR parameter set is selected from plural parameter sets of a LLR table and the error correction process of the soft data is performed according to the selected LLR parameter set. | 2016-03-17 |
20160077915 | MAGNETIC RANDOM ACCESS MEMORY - A magnetic random access memory includes memory cells, a read circuit, (ECC) circuit, an address register, a flag register, a flag check circuit, and a write back circuit. The memory cells each include a magnetoresistive element. The address register stores the address at which the error has been detected by the ECC circuit. The data register stores corrected data in which the error has been corrected by the ECC circuit. The flag register sets an error flag in association with the address at which the error has been detected by the ECC circuit. The flag check circuit checks whether the error flag is set in the flag register. The write back circuit writes back the data to the memory cell designated by the address corresponding to the error flag. | 2016-03-17 |
20160077916 | SYSTEM AND METHOD FOR SYSTEM-ON-A-CHIP SUBSYSTEM EXTERNAL ACCESS DETECTION AND RECOVERY - Systems and methods for external access detection and recovery in a subsystem of a system-on-a-chip (SoC) in a portable computing device (PCD) are presented. In operation, a subsystem of the SoC is operated in an internal mode independently of the SoC while the SoC is in a low power state, such as a non-functional or zero power state or mode. The subsystem comprises a processor in communication with a memory, a sensor, and a monitor module. The monitor module detects when the processor of the subsystem requests access to a component external to the subsystem. In response to this detected request, the SoC is caused to enter into a full power state or mode, and the subsystem is caused to exit the internal mode of operation. | 2016-03-17 |
20160077917 | DATA RECOVERY USING BITMAP DATA STRUCTURE - Examples of the present disclosure describe implementing bitmap-based data replication when a primary form of data replication between a source device and a target device cannot be used. According to one example, a temporal identifier may be received from the target device. If the source device determines that the primary replication method is unable to be used to replicate data associated with the temporal identifier, a secondary replication method may be initiated. The secondary replication method may utilize a recovery bitmap identifying data blocks that have changed on the source device since a previous event. | 2016-03-17 |
20160077918 | METHOD AND APPARATUS FOR RECOVERING PARTITION BASED ON FILE SYSTEM METADATA - A method and apparatus for recovering a partition based on file system metadata, which calculate core information necessary for the recovery of a partition using only the MFT entry information of $MFT and recover a deleted partition when an MBR and a GPT that correspond to the partition configuration information of a disk and a BR and a BBR that store the configuration information of a volume are deleted or destroyed. The method includes determining an unallocated area in a disk or an evidence image, collecting MFT entries from the unallocated area, generating MFT partition candidate information by analyzing the MFT entries, and creating information enabling a layout of a partition to be reconfigured based on the MFT partition candidate information, and creating a tree structure using the created information and the MFT entries. | 2016-03-17 |
20160077919 | METHODS AND APPARATUS TO PERFORM SITE RECOVERY OF A VIRTUAL DATA CENTER - Methods, apparatus, systems and articles of manufacture to perform site recovery of a virtual data center are disclosed. An example method includes discovering a work item to be included in a protection group associated with a recovery plan. The work item is not included in the protection group prior to execution of the site recovery workflow and the work item is discovered during execution of a site recovery workflow. The method also includes causing an operation of the site recovery workflow to be performed on the work item, and storing, in a persistable data container, a work item identifier identifying the work item. A result indicating the outcome of the operation performed on the work item is also stored. In some examples, the persistable data container is accessible to a status output device. | 2016-03-17 |
20160077920 | SNAPSHOTS AND FORKS OF STORAGE SYSTEMS USING DISTRIBUTED CONSISTENT DATABASES IMPLEMENTED WITHIN AN OBJECT STORE - A method is described that includes providing a snapshot counter for a storage system implemented with multiple distributed consistent database instances. The method further includes recognizing the taking of a snapshot of the storage system by incrementing the snapshot counter from a first snapshot counter value to a second snapshot counter value. The method further includes, in response to a first change for one of the distributed consistent databases subsequent to the taking of the snapshot, performing the following: saving state information of the distributed consistent database as the state information existed prior to the change and associating the first snapshot counter value to the state information. Associating the second snapshot counter's value with the distributed consistent database having the first change. Another method for the taking of a snapshot of a distributed consistent database is also described. | 2016-03-17 |
20160077921 | VIRTUAL COMPUTER SYSTEM, PRINTER CONTROL SYSTEM, VIRTUAL COMPUTATION METHOD, PRINTER CONTROL METHOD, AND STORAGE MEDIA - A virtual computer system includes a first saving unit that saves at least one or more snapshots each having recorded therein a state of a virtual machine, the state including an application program installed on the virtual machine, the snapshot being saved as a reference snapshot; an applying unit that applies the reference snapshot to the virtual machine when an execution request for the application program is received; and a second saving unit that saves a state of the virtual machine that executes the application program, the state being saved as a snapshot. | 2016-03-17 |
20160077922 | Advanced Versioned Memory - According to an example, versioned memory implementation may include comparing a global memory version to a block memory version. The global memory version may correspond to a plurality of memory blocks, and the block memory version may correspond to one of the plurality of memory blocks. A subblock-bit-vector (SBV) corresponding to a plurality of subblocks of the one of the plurality of memory blocks may be evaluated. Based on the comparison and the evaluation, a determination may be made as to which level in a cell of one of the plurality of subblocks of the one of the plurality of memory blocks checkpoint data is stored. | 2016-03-17 |
20160077923 | INTEGRATED DATABASE AND LOG BACKUP - Systems and methods of performing backup of databases and associated logs with one schedule such that a backup of both a database and its associated log can be restored or recovered to a desired point in time. A backup request associated with a backup type is received and defined by a service level agreement. The service level agreement includes a combined schedule for backing up both data stored in the database and log data associated with a database. | 2016-03-17 |
20160077924 | SELECTING A STORE FOR DEDUPLICATED DATA - A technique includes communicating a plurality of hashes associated with chunks of an object to at least some stores of a plurality of stores on which the object is distributed; and in response to the communication, receiving responses indicating a distribution of the associated chunks. The technique includes selecting one of the stores based at least in part on the responses and communicating deduplicated data associated with the object to the selected store. | 2016-03-17 |
20160077925 | MULTI-THREADED SMART COPY - Systems and methods of utilizing multiple threads to facilitate parallel data copying to reduce an amount of time associated with backing up data. A request to copy application is received that indicates a number of available threads. A first available thread is used to select files from the application for backup. Selecting a file includes adding files to a work queue and creating backup work items associated with the work queue files. The files in the work queue are processed by a multiple threads in parallel such that an amount of time associated with backup up the application is reduced. | 2016-03-17 |
20160077926 | SYSTEM AND METHOD FOR MULTI-HOP DATA BACKUP - Systems and methods of backing up data to a replication target such that the data is recoverable from the replication target when a source application and one or more other intermediary replication targets are unavailable. A first deduplicated data object associated with an application is received at a first intermediary copy data management system based on a first schedule. The first deduplicated data object is replicated to generate at least one of a second deduplicated data object at a second copy data management system according to a second schedule. | 2016-03-17 |
20160077927 | METHODS AND APPARATUS FOR MANAGING A LARGE-SCALE ENVIRONMENT OF COPY DATA MANAGEMENT APPLIANCES - Techniques disclosed herein provide for global management of a set of data management services being executed by at least one of one or more physical data management appliances and one or more virtual data management appliances. First instructions are transmitted to a first copy data management appliance that cause the first copy data management appliance to send first data associated with protecting a first application entity to the management server. Second instructions are transmitted to a second copy data management appliance that cause the second copy data management appliance to send second data associated with protecting a second application entity to the management server. A plurality of data management policies associated with the first copy data management appliance and the second copy data management appliance are scheduled using a third service level template, which includes a merged set of schedules for the first and second copy data management appliances. | 2016-03-17 |
20160077928 | Parallel Mirrored Copying with Write Consistency - A method, computer program product and/or system for facilitating data access that performs the following steps (not necessarily in the following order): (i) generating a Mirror Write Consistency (MWC) record associated with a data portion stored on a data storage device (ii) saving a dynamic copy of the MWC record in a manner such that the MWC record is more readily accessible for read and write operations than the data portion stored on the data storage device. At least the generating and making step is performed by computer software running on computer hardware. | 2016-03-17 |
20160077929 | ROTATING INCREMENTAL DATA BACKUP - A method for backing up a database includes identifying n portions of a database wherein each of the n portions is greater than 0% and less than 100% of the database. The method also includes performing a complete backup of a first 1/n portion of the database and performing an incremental backup on the remaining (n−1)/n portion of the database, and for each subsequent backup, performing a complete backup of a next 1/n portion of the database and performing an incremental backup on the remaining (n−1)/n portion of the database. | 2016-03-17 |
20160077930 | SELECTIVELY PERSISTING APPLICATION PROGRAM DATA FROM SYSTEM MEMORY TO NON-VOLATILE DATA STORAGE - Application program data stored in system memory may be selectively persisted. An indication may be provided to an application program that an application data object or a range of application data stored in system memory may be treated as persistent. Data backup may be enabled for the application data object or range of application data in the event of a system failure, copying the application data object or range of application data from system memory to non-volatile data storage. Upon recovery from a system failure, further data backup for the application data object or the range of application data may be disabled. In some embodiments, at least some of the application data object or range of application data may be recovered for the application program to access. Data backup for the application data object or the range of application data may also be re-enabled. | 2016-03-17 |
20160077931 | FILTERING EVENT LOG ENTRIES - Efficient logging in a control system. Register update requests to store data values in one or more of a plurality of primary registers are received. The most frequently updated primary registers of the plurality of primary registers are periodically identifying. A shadow register is associated with each of the identified most frequently updated primary registers. In response to receiving a register update request to store a data value in one of the most frequently updated primary registers, it is determined if the data value to store is different than the data value stored in the shadow register associated with the register to update. If so, the data value to store is stored into the register to update, stored into the shadow register associated with the register to update, and a log entry corresponding to the register update request is stored in an event log file. | 2016-03-17 |
20160077932 | HIGH AVAILABILITY CACHE IN SERVER CLUSTER - For a high availability cache, a cache module obtains permission to manage the cache in response to a failover event in a server cluster by communicating a cache coherency token. An update module rebuilds a cache directory from data stored in the cache and accesses the cache without reloading the data stored in the cache. | 2016-03-17 |
20160077933 | Scalable Data Storage Pools - Scalable data storage techniques are described. In one or more implementations, data is obtained by one or more computing devices that describes fault domains in a storage hierarchy and available storage resources in a data storage pool. Operational characteristics are ascertained, by the one or more computing devices, of devices associated with the available storage resources within one or more levels of the storage hierarchy. Distribution of metadata is assigned by the one or more computing devices to one or more particular data storage devices within the data storage pool based on the described fault domains and the ascertained operational characteristics of devices within one or more levels of the storage hierarchy. | 2016-03-17 |
20160077934 | MANAGING VIOS FAILOVER IN A SINGLE STORAGE ADAPTER ENVIRONMENT - According to one exemplary embodiment, a method for VIOS failover in an environment with a physical storage adapter is provided. The method may include assigning the physical storage adapter to a first VIOS, wherein the physical storage adapter has I/O connectivity to at least one storage device. The method may include configuring a first I/O path between the first VIOS and a second VIOS. The method may include configuring a second I/O path from a client partition to the first VIOS, wherein the second I/O path is set as a primary I/O path. The method may include configuring a third I/O path from the client partition to the second VIOS. The method may include determining the first VIOS is inaccessible. The method may include unassigning the physical storage adapter from the first VIOS. The method may include assigning the physical storage adapter to the second VIOS. | 2016-03-17 |
20160077935 | VIRTUAL MACHINE NETWORK LOSS DETECTION AND RECOVERY FOR HIGH AVAILABILITY - Exemplary methods, apparatuses, and systems determine that a first physical network interface controller of a first host computer has lost a client traffic network connection. At least one data compute node running on the first host computer has client traffic transmitted via the client traffic network connection. In response to the loss of the client traffic network connection, one or more host computers each having a physical network interface controller with a functioning network connection for the client traffic are identified. Further in response to the loss of the client traffic network connection, the data compute node is moved to one of the identified host computers. The first host computer utilizes a second physical network interface controller to move data compute node. | 2016-03-17 |
20160077936 | FAILOVER MECHANISM IN A DISTRIBUTED COMPUTING SYSTEM - The disclosure is directed to failover mechanisms in a distributed computing system. A region of data is managed by multiple region servers. One of the region servers is elected as a “leader” and the remaining are “followers.” The leader serves the read/write requests from a client. The leader writes the data received from the client into the in-memory store and a local write-ahead log (“WAL”), and synchronously replicates the WAL to the followers. A region server designated as an “active” region server synchronizes a distributed data store with the data from the WAL. Active witness followers apply the data from the WAL to their in-memory store while shadow witness followers do not. Different types of servers provide failover mechanisms with different characteristics. A leader is elected based on their associated ranks—higher the rank, higher the likelihood of electing itself as a leader. | 2016-03-17 |
20160077937 | FABRIC COMPUTER COMPLEX METHOD AND SYSTEM FOR NODE FUNCTION RECOVERY - A fabric computer method and system for recovering fabric computer node function. The fabric computer method includes monitoring a processing environment operating on a first Processor and Memory node within the fabric computer complex, detecting a failure of the first Processor and Memory node, and transferring the processing environment from the first Processor and Memory node to a second Processor and Memory node within the fabric computer complex in response to the detection of a failure of the first Processor and Memory node. The fabric computer system includes a first Processor and Memory node, a second Processor and Memory node coupled to the first Processor and Memory node, at least one input/output (I/O) and Networking node coupled to the first and second Processor and Memory nodes, and a fabric manager coupled to the first and second Processor and Memory nodes and the at least one I/O and Networking node. The fabric manager is configured to monitor a processing environment operating on the first Processor and Memory node, to receive notification of a failure of the first Processor and Memory node, and to transfer the processing environment from the first Processor and Memory node to the second Processor and Memory node in response to the detection of a failure of the first Processor and Memory node. | 2016-03-17 |
20160077938 | MANAGING VIOS FAILOVER IN A SINGLE STORAGE ADAPTER ENVIRONMENT - According to one exemplary embodiment, a method for VIOS failover in an environment with a physical storage adapter is provided. The method may include assigning the physical storage adapter to a first VIOS, wherein the physical storage adapter has I/O connectivity to at least one storage device. The method may include configuring a first I/O path between the first VIOS and a second VIOS. The method may include configuring a second I/O path from a client partition to the first VIOS, wherein the second I/O path is set as a primary I/O path. The method may include configuring a third I/O path from the client partition to the second VIOS. The method may include determining the first VIOS is inaccessible. The method may include unassigning the physical storage adapter from the first VIOS. The method may include assigning the physical storage adapter to the second VIOS. | 2016-03-17 |
20160077939 | RECOVERING FROM UNCORRECTED MEMORY ERRORS - A method for recovering from uncorrected memory errors may include receiving, at an operating system, a correctable error (CE) associated with a first memory page. The correctable error is marked in a page table entry describing the first memory page. The first memory page is then migrated, by the operating system, to a second memory page based on the received correctable error. | 2016-03-17 |
20160077940 | MEMORY DEVICE CAPABLE OF QUICKLY REPAIRING FAIL CELL - The memory device includes a memory array, control logic and a recovery circuit. The memory array has a first region configured to store data, a second region configured to store a portion of fail cell information, and a third region configured to store recovery information. The fail cell information identifies failed cells in the first region, and the recovery information is for recovering data stored in the identified failed cells. The control logic is configured to store the fail cell information, to transfer the portion of the fail cell information to the second region of the memory array, and to determine whether to perform a recovery operation based on address information in an access request and the portion of the fail cell information stored in the second region. The access request is a request to access the first region. The recovery circuit is configured to perform the recovery operation. | 2016-03-17 |
20160077941 | IDENTIFYING A DEFECT IN A DATA-STORAGE MEDIUM - An embodiment of a data-read path includes a defect detector and a data-recovery circuit. The defect detector is operable to identify a defective region of a data-storage medium, and the data-recovery circuit is operable to recover data from the data-storage medium in response to the defect detector. For example, such an embodiment may allow identifying a defective region of a data-storage disk caused, e.g., by a scratch or contamination, and may allow recovering data that was written to the defective region. | 2016-03-17 |
20160077942 | STORAGE SYSTEM AND TEST METHOD FOR TESTING PCI EXPRESS INTERFACE - Provided is a storage system and a test method for a testing Peripheral Component Interconnect Express (PCI Express) interface. The storage system of the present invention includes a plurality of DMA memory units storing test data, a data processing unit connected to the plurality of DMA memory units, wherein a predetermined amount of data is transmitted at least once from a first processing (such as an SAS control chip) to the plurality of DMA memory units through a PCI Express interface and the data processing unit, transmission information is generated and recorded during data transmission, and the transmission information is outputted by the data processing unit while data transmission is completed or an interrupt is generated due to an error occurred during data transmission, and a test unit testing the PCI Express interface based on the transmission information outputted by the data processing unit. | 2016-03-17 |
20160077943 | INPUT MODULE FOR PROGRAMMABLE LOGIC CONTROLLER - The invention relates to an input module ( | 2016-03-17 |
20160077944 | SYSTEMS AND METHODS OF BUILDING SEQUENCEABLE TEST METHODOLOGIES - Networks and applications can have many different profiles. Template configurations can consist of a wide variety of technologies such as IPv4, DHCP, and BGP. A list of application profiles would include web services, VoIP, Email, and Point-to-point. Network and application profiles can be combined into topology templates. Test methodologies can include complex sets of instructions that allow for testing any number of topology templates in a number of ways. The technology disclosed allows for the assembly, edit, and execution of those profiles and methodologies by someone who does not possess detailed domain knowledge. | 2016-03-17 |
20160077945 | STORAGE SYSTEM STATISTICAL DATA STORAGE AND ANALYSIS - First performance data is obtained from active data sources for components of a storage system into execution space of an operating system. Second performance data is derived from the first performance data. The first performance data and the second performance data is grouped into a data unit that can be written to a data structure. The data unit is written to the data structure. | 2016-03-17 |
20160077946 | PAGE RESOLUTION STATUS REPORTING - A method for data transfer includes receiving in a data transfer operation data to be written by a peripheral device to a specified virtual address in a random access memory (RAM) of a host computer. Upon receiving the data, it is detected that a page that contains the specified virtual address is marked as not present in a page table of the host computer. The peripheral device receives a notification that the page is not present and an estimate of a length of time that will be required to make the page available and selects a mode for handling of the data transfer operation depending upon the estimate. | 2016-03-17 |
20160077947 | UPDATING OF TROUBLESHOOTING ASSISTANTS - Methods and arrangements for providing assistance with troubleshooting for system updates. There is sent, to a first database, a feature log associated with an update event at a first location. The feature log is pooled in the first database with feature logs associated with update events at other locations. A signature is created of at least one update from the first database, and the signature is added to a signature database. The signature database is employed to identify one or more deviations, when the at least one update fails in at least one location. The one or more deviations are ranked with respect to at least one other deviation. Other variants and embodiments are broadly contemplated herein. | 2016-03-17 |
20160077948 | METHOD AND SYSTEM FOR MONITORING HEALTH OF A VIRTUAL ENVIRONMENT - A method and system for monitoring health of virtual environment includes receiving input data for one or more virtual machines in the virtual environment. A number of entitled CPU cycles for each of the virtual machines based on the input data are determined. A number of actual CPU cycles obtained by each of the virtual machines based on the input data are computed. The number of entitled CPU cycles is compared with the number of actual CPU cycles for each of the virtual machines. A health status of the virtual machines based on the comparison is displayed. | 2016-03-17 |
20160077949 | ONLINE APPLICATION TESTING ACROSS BROWSER ENVIRONMENTS - A stub can be loaded into a first browser environment of a browser application on a client machine, with the stub being loaded from a domain. The stub can execute to load an online application test into the first browser environment. Additionally, the test can execute in the first browser environment to conduct the test on an online application. For example, the test may be conducted from a second browser environment of the browser on the client machine. Performing the test can include loading one or more digital pages from the application into the second browser environment. | 2016-03-17 |
20160077950 | METHODS, CIRCUITS, APPARATUS, SYSTEMS AND ASSOCIATED SOFTWARE MODULES FOR EVALUATING CODE BEHAVIOR - Disclosed are methods, circuits, apparatus, systems and associated software modules for dynamically evaluating code behavior in runtime. There is provided a code testing platform and/or framework which may include: (1) a code execution environment instancing module (CEEIM), (2) code execution resources, (3) executed code isolation logic, and (4) code call response logic. The CEEIM may instance, on a computing platform, a code execution environment (CEE) which is at least partially isolated from external resources functionally associated with the computing platform. The CEE may include code execution resources adapted to execute code whose behavior is to be evaluated, wherein a resource call generated from code execution may be analyzed by the code isolation logic and may under certain conditions be routed to the code call response logic. | 2016-03-17 |
20160077951 | PERIODICITY OPTIMIZATION IN AN AUTOMATED TRACING SYSTEM - Periodicity similarity between two different tracer objectives may be used to identify additional input parameters to sample. The tracer objectives may be individual portions of a large tracer operation, and each of the tracer objectives may have separate set of input objects for which data may be collected. After collecting data for a tracer objective, other tracer objectives with similar periodicities may be identified. The input objects from the other tracer objectives may be added to a tracer objective and the tracer objective may be executed to determine a statistical significance of the newly added objective. An iterative process may traverse multiple input objects until exhausting possible input objects and a statistically significant set of input objects are identified. | 2016-03-17 |
20160077952 | REGISTRATION-BASED REMOTE DEBUG WATCH AND MODIFY - A remote debugging technique provides anonymity of program variables and selective debugging capability by providing a registration facility by which program variables are registered locally with a debugging module. An external program then communicates with the debugging modules and observes and/or modifies the program variables by specifying either an index or a variable name. The need to publish symbols is thereby averted and only the variables that a developer is interested in observing need be registered. | 2016-03-17 |
20160077953 | RELEASE TEMPLATE - A project change control record in a release template controls the release of a code change from a change control platform into a test environment. The change control platform receives the code change from a developer. The change control platform applies the code change to the test environment only if the corresponding project change control record exists in the release template and a project corresponding to the code change has an approved status in a project management platform. | 2016-03-17 |
20160077954 | DATA PROCESSING APPARATUS AND DATA PROCESSING METHOD - A data processing apparatus includes a request receiving unit that receives a request from a program that causes a device to perform a predetermined process; an emulating unit that emulates a process performed by the device in accordance with the request; an instruction receiving unit that receives an instruction to change a status of the emulating unit from a user; a status changing unit that causes the emulating unit to change the status in accordance with the instruction to change the status; and a storing processing unit that stores, in response to generation of the request or generation of the instruction to change, information indicating the request or information indicating the instruction to change in a first storing unit, wherein the emulating unit emulates the process performed by the device under a status changed by the status changing unit. | 2016-03-17 |
20160077955 | REGRESSION TESTING OF RESPONSIVE USER INTERFACES - A system, method and program product are provided for testing responsive user interface logic within an application. A method is disclosed that includes: executing the application on a computing system, wherein the application includes an agent injected therein that can interact with the application and communicate with a test platform external to the application; triggering the agent to load a set of configuration parameters for a selected display system; capturing, within the agent, display attributes of an associated graphical display interface generated by the application for the selected display system; and comparing the display attributes of the associated graphical display interface with desired display attributes of the associated graphical display interface. | 2016-03-17 |
20160077956 | SYSTEM AND METHOD FOR AUTOMATING TESTING OF SOFTWARE - The present disclosure relates to systems, methods, and non-transitory computer-readable media for automating testing of software. The method comprises receiving, the at least one test case. The at least one test case associated with at least one test platform may be executed. Further, a variable time delay may be interjected between successive runs for the at least one test case. The variable time delay based on inertia associated with the at least one test platform. A sequence of the one or more test results for the at least one test case may be built. Based on the one or more test results, an output consistency based on the one or more test results may be determined. Finally, a fault associated with the at least one test platform or a software based on the output consistency may be determined. | 2016-03-17 |
20160077957 | DECODING TECHNIQUES USING A PROGRAMMABLE PRIORITY ENCODER - A system, computer-readable media, and methods are disclosed for building a decoding table. The system may include one or more registers configured to store a data value based on an order in which one or more lengths were obtained. The system may also include a programmable priority encoder configured to scan the one or more registers for the data value. Further, the system may include a memory configured to store, based on locations of the data value in the one or more registers, at least one of encoding values or letters. | 2016-03-17 |
20160077958 | INITIATING OPERATION OF A TIMING DEVICE USING A READ ONLY MEMORY (ROM) OR A ONE TIME PROGRAMMABLE NON VOLATILE MEMORY (OTP NVM) - The present invention provides a method and a programmable timing device that includes a timing device circuit for generating at least one timing signal, a static random access memory (SRAM) coupled to the timing device circuit, a read only memory (ROM) having a first timing device configuration stored therein, a one time programmable non volatile memory (OTP NVM) for storing a second timing device configuration and selection logic. The selection logic includes an output coupled to the SRAM, a first input coupled to the ROM and a second input coupled to the OTP NVM. The selection logic is operable to receive input indicating whether SRAM is to be loaded from the ROM or the OTP NVM, and operable to load either the first timing device configuration from the ROM or the second timing device configuration from the OTP NVM based on the input. | 2016-03-17 |
20160077959 | System and Method for Sharing a Solid-State Non-Volatile Memory Resource - A computing device and methods for exposing a solid-state non-volatile memory element to multiple masters in a computing device are disclosed. A portion of a solid-state non-volatile memory element includes code and data for use by a non-boot processing resource. A host controller in communication with the solid-state non-volatile memory element is modified to receive and respond to a resource identifier unique to the processing resource that is requesting read access to the solid-state non-volatile memory element. Logic executed by a boot master and logic executed by a non-boot processing resource are synchronized in response to a set of indicators. | 2016-03-17 |
20160077960 | ADAPTIVE COMPRESSION DATA STORING METHOD FOR NON-VOLATILE MEMORIES AND SYSTEM USING THE SAME - An adaptive compression data storing method for non-volatile memories and a system using the method are disclosed. The system includes a host interface unit, a data compressor, a padding unit, a buffer, a combining unit, and a mapping table unit. By combining some compressed data in one page, the present invention can settle the problem that space for storing a compressed data that can not be utilized. Further, lifetime of non-volatile memories can be extended. | 2016-03-17 |
20160077961 | Storage Module and Method for Scheduling Memory Operations for Peak-Power Management and Balancing - A storage module and method for scheduling memory operations for peak-power management and balancing are provided. In one embodiment, a storage module maintains a count of time slots over a period of time. The period of time corresponds to an amount of time between periodic power peaks of a memory operation. For each time slot, the storage module determines whether to commence a memory operation on one or more of the plurality of memory dies based on whether a power peak generated in the time slot by the memory operation would exceed a power threshold allowed for the time slot. Other embodiments are provided. | 2016-03-17 |
20160077962 | HYBRID-HDD POLICY FOR WHAT HOST-R/W DATA GOES INTO NAND - In a cache policy for a hybrid drive having a magnetic storage device and a non-volatile solid-state device, the hybrid drive is configured to write the most recent version of data associated with a logical block address to the non-volatile solid-state device when the logical block address is associated with previously written data and is overlapped by a subsequent disk write operation. Advantageously, the most recent version of data associated with the overlapped logical block address is stored in cache in the non-volatile solid-state device, even when the subsequent disk write operation results in the overlapped logical block address being trimmed from cache or otherwise invalidated. Consequently, data associated with the overlapped logical block address can be accessed more quickly than data written to the magnetic storage device. | 2016-03-17 |
20160077963 | Apparatus and Method to Share Host System RAM with Mass Storage Memory RAM - A method includes, in one non-limiting embodiment, sending a request from a mass memory storage device to a host device, the request being one to allocate memory in the host device; writing data from the mass memory storage device to allocated memory of the host device; and subsequently reading the data from the allocated memory to the mass memory storage device. The memory may be embodied as flash memory, and the data may be related to a file system stored in the flash memory. The method enables the mass memory storage device to extend its internal volatile RAM to include RAM of the host device, enabling the internal RAM to be powered off while preserving data and context stored in the internal RAM. | 2016-03-17 |
20160077964 | STORAGE DEVICE AND GARBAGE COLLECTION METHOD OF DATA STORAGE SYSTEM HAVING THE STORAGE DEVICE - A garbage collection method of a data storage system having storage devices is provided. The method includes determining whether a garbage collection is needed in one of the storage devices, transferring a multicast garbage collection command from one of the storage devices to at least one other storage device in a write group through a multicast operation, and performing the garbage collection in one of the storage devices. | 2016-03-17 |
20160077965 | Categorizing Memory Pages Based On Page Residences - Embodiments of the present invention provide hints for page stealing by prioritizing pages based on the number of residences. Receiving a plurality of pages to be hinted to a hypervisor for page stealing. Determining at least two page types of the plurality of pages. Determining whether any of the at least two page types has a total number of residences less than a total number of potential residences in the virtual environment for all page types and have a total number of residences less than a threshold. Responsive to determining a first page type of the at least two page types has a total number of residences less than a total number of potential residences for all page types and has a total number of residences less than a threshold, notifying the hypervisor of at least one page from the plurality of pages that is the determined first page type. | 2016-03-17 |
20160077966 | DYNAMICALLY PROVISIONABLE AND ALLOCATABLE EXTERNAL MEMORY - Dynamically provisionable and allocatable memory external to a requesting apparatus may be provided. A request for primary memory may be made by an application executing on a client. An allocation logic unit may determine an allocation strategy in response to the request. As part of the allocation strategy, the allocation logic unit may identify memory appliances on which memory regions are to be allocated. The allocated memory regions may form the primary memory that is allocated to the requesting application. The allocation logic unit may send region allocation requests to region access unit of the respective memory appliances. The memory appliances on which the memory regions are allocated may be external to the client. The application may access the allocated memory regions via client-side access in which one or more processors in the client and/or the memory appliances are bypassed. | 2016-03-17 |
20160077967 | SYSTEM AND METHOD FOR IDENTIFYING DATA FIELDS FOR REMOTE ADDRESS CLEANSING - A system and method for identifying data fields for remote address cleansing, whereby a plurality of address file hash values are stored and associated with a plurality of known address data file profiles. An uploaded address file is received at the processing site from a sender who wishes to have his address list processed. A received address data file profile is identified for the uploaded address the. A first hash value is calculated based on the identified received address data the profile. The first hash value is compared with the stored plurality of address the hash values. If the first hash value matches one of the stored plurality of hash values, then the known address data profile of the matching stored hash value is associated with the uploaded address file. If the first hash value does not match any of the stored plurality of hash values, then preparing a new address file profile, generating a new hash of the new profile, and storing the new profile along with the associated new hash. | 2016-03-17 |
20160077968 | SYSTEM AND METHOD FOR CONFIGURING AND CONTROLLING NON-VOLATILE CACHE - Systems and methods for configuring, controlling and operating a non-volatile cache are disclosed. A host system may poll a memory system as to the memory system's configuration of its non-volatile cache. Further, the host system may configure the non-volatile cache on the memory system, such as the size of the non-volatile cache and the type of programming for the non-volatile cache (e.g., whether the non-volatile cache is programmed according to SLC or the type of TRIM used to program cells in the non-volatile cache). Moreover, responsive to a command from the host to size the non-volatile cache, the memory system may over or under provision the cache. Further, the host may control operation of the non-volatile cache, such as by sending selective flush commands. | 2016-03-17 |
20160077969 | CACHE MEMORY SYSTEM AND OPERATING METHOD THEREOF - A cache memory apparatus includes a tag comparator configured to compare upper bits of each of pieces of tag data included in a set indicated by a set address that is received with upper bits of a tag address that is received, compare other bits of each of the pieces of the tag data with other bits of the tag address, and determine whether there is a cache hit or a cache miss based on results of the comparisons, and an update controller configured to, in response to the cache miss being determined, determine, as an update candidate, a piece among pieces of cache data included in the set and corresponding to the pieces of the tag data, based on the result of the comparison of the upper bits of each of the pieces of the tag data and the upper bits of the tag address, and update the update candidate with new data. | 2016-03-17 |
20160077970 | Virtual Shared Cache Mechanism in a Processing Device - In accordance with embodiments disclosed herein, there is provided systems and methods for providing a virtual shared cache mechanism. A processing device includes a plurality of clusters allocated into a virtual private shared cache. Each of the clusters includes a plurality of cores and a plurality of cache slices co-located within the plurality of cores. The processing device also includes a virtual shared cache including the plurality of clusters such that the cache data in the plurality of cache slices is shared among the plurality of clusters. | 2016-03-17 |
20160077971 | METHODS AND SYSTEMS FOR CACHING DATA IN A STORAGE SYSTEM BASED ON USER INPUT - A storage device includes a flash memory-based cache for a hard disk-based storage device and a controller that is configured to limit the rate of cache updates through a variety of mechanisms, including determinations that the data is not likely to be read back from the storage device within a time period that justifies its storage in the cache, compressing data prior to its storage in the cache, precluding storage of sequentially-accessed data in the cache, and/or throttling storage of data to the cache within predetermined write periods and/or according to user instruction. | 2016-03-17 |
20160077972 | Efficient and Consistent Para-Virtual I/O System - Embodiments of the invention relate to a para-virtual I/O system. A consistent para-virtual I.O system architecture is provided with a new virtual disk interface and a semantic journaling mechanism. The virtual disk interface is extended with two primitives for flushing and ordering I/O, both of the primitives being exported to para-virtual I/O drivers in a guest operating system. The ordering primitive guarantees ordering of preceeding writes, and the flushing primitive enforces order and durability. The guest drivers selectively uses both of these primitives based on semantics of the data being persisted from the para-virtual cache hierarchy to physical disk. The order of committed writes is enforced in order to enable a consistent start recovered after a crash. | 2016-03-17 |
20160077973 | Cache Bank Spreading For Compression Algorithms - Aspects include computing devices, systems, and methods for implementing a cache memory access requests for compressed data using cache bank spreading. In an aspect, cache bank spreading may include determining whether the compressed data of the cache memory access fits on a single cache bank. In response to determining that the compressed data fits on a single cache bank, a cache bank spreading value may be calculated to replace/reinstate bank selection bits of the physical address for a cache memory of the cache memory access request that may be cleared during data compression. A cache bank spreading address in the physical space of the cache memory may include the physical address of the cache memory access request plus the reinstated bank selection bits. The cache bank spreading address may be used to read compressed data from or write compressed data to the cache memory device. | 2016-03-17 |
20160077974 | ADAPTIVE CONTROL OF WRITE CACHE SIZE IN A STORAGE DEVICE - Technologies are described herein for adaptively controlling the size of a write cache in a storage device based on the time required to flush the cache. Upon receiving a write command at a controller for the storage device, an estimated cache flush time for the write cache is calculated based on the write commands contained therein. If the estimated cache flush time is greater than a maximum threshold time, the size of the write cache is decreased to control the cache flush time. If the estimated cache flush time is less than a minimum threshold time, the size of the write cache is increased to enhance random write performance. | 2016-03-17 |
20160077975 | PROVISIONING OF EXTERNAL MEMORY - Dynamically provisionable and allocatable memory external to a requesting apparatus may be provided. A request for primary memory may be made by an application executing on a client. An allocation logic unit may determine an allocation strategy in response to the request. As part of the allocation strategy, the allocation logic unit may identify memory appliances on which memory regions are to be allocated. The allocated memory regions may form the primary memory that is allocated to the requesting application. The allocation logic unit may send region allocation requests to region access unit of the respective memory appliances. The memory appliances on which the memory regions are allocated may be external to the client. The application may access the allocated memory regions via client-side access in which one or more processors in the client and/or the memory appliances are bypassed. | 2016-03-17 |
20160077976 | ADDRESS TRANSLATION SERVICES FOR DIRECT ACCESSING OF LOCAL MEMORY OVER A NETWORK FABRIC - A method in a system that includes first and second devices that communicate with one another over a fabric that operates in accordance with a fabric address space, and in which the second device accesses a local memory via a local connection and not over the fabric, includes sending from the first device to a translation agent (TA) a translation request that specifies an untranslated address in an address space according to which the first device operates, for directly accessing the local memory of the second device. A translation response that specifies a respective translated address in the fabric address space, which the first device is to use instead of the untranslated address is received by the first device. The local memory of the second device is directly accessed by the first device over the fabric by converting the untranslated address to the translated address. | 2016-03-17 |
20160077977 | SECURE PROOFS OF STORAGE FOR DEDUPLICATION - Storage providers can securely store data and avoid data duplication with secure derivative data and offload the responsibility of generating the secure derivative data to the data owners. Initially, a data source will provide an encrypted version of data and the secure derivative data to a remote storage provider. The secure derivative data can include a hash of the data, a hash of the encrypted version of the data, a hash tree generated from the data, and an encrypted version of the key used to encrypt the data. When the remote storage provider later receives a request to store the same data, the remote storage provider uses the secure derivative data for secure proofs of storage and for proof of data possession. | 2016-03-17 |
20160077978 | ASSOCIATING KEYS WITH DATA AND COMPUTE OBJECTS IN A STORAGE COMPUTE DEVICE - A definition is received of at least one data object and a compute object from a host at a storage compute device. A first key is associated with the at least one data object and a second key is associated with the compute object. A command is received from the host to perform a computation that links the first and second keys. The computation is defined by the compute object and acts on the data object. The computation is performed via the storage compute device using the compute object and the data object in response to the command. | 2016-03-17 |
20160077979 | NON-VOLATILE MEMORY TO STORE RESETTABLE DATA - A non-volatile memory (NVM) is to store data and a first password. The first password is to protect the data. A controller is to selectively enable interaction with the data based on authenticating the first password against a second password. A temporary region is to store the second password. The second password is discarded in response to a status change of the apparatus. The data, the first password, and the second password are resettable by the controller in response to a reset request to bypass the first password, such that the apparatus is restorable to an unused state without authenticating the first password. | 2016-03-17 |
20160077980 | METHODS, DEVICES AND SYSTEMS FOR CACHING DATA ITEMS - A method of storing data items may comprise receiving an uncompressed data item for storage from a client process of a plurality of client processes over a computer network; storing the uncompressed data item; acknowledging storage of the data item to the client process and receiving at least one additional uncompressed data item for storage from the client process or from another one of the plurality of client processes. The stored uncompressed data item may then be compressed and stored. Upon receiving a request for access to the data item from one of the plurality of client processes over the computer network, the compressed data item is decompressed before providing the decompressed data item to the requesting client process over the computer network. | 2016-03-17 |
20160077981 | Method and Apparatus for Efficient User-Level IO in a Virtualized System - In a virtualized computer system without an IOMMU, all application IO requests must be processed by the guest operating system and by the hypervisor so that addresses are translated (twice) and validated (twice) properly. In a virtualized computer system with an IOMMU containing one “stage” of translation, the peripheral can safely be assigned directly to a guest OS because the IOMMU can be programmed to translate and check addresses issued by the device. As a result, route IO overhead due to hypervisor intervention can be eliminated. In one example, in a virtualized computer system with an IOMMU supporting two “stages” of translation, the peripheral can safely be assigned directly to an application within a guest OS. As a result, route IO overhead due to hypervisor and guest OS processing can be eliminated. This allows an application to achieve higher IO performance. | 2016-03-17 |
20160077982 | METHOD FOR SETTING UNIVERSAL SERIAL BUS (USB) INTERFACE OF ELECTRONIC DEVICE, AND ELECTRONIC DEVICE - Certain aspects of the disclosure relates to a method for operating an electronic device. A control device detects a Universal Serial Bus (USB) interface being connected to the electronic device, where the USB interface has a plurality of virtual ports. Then the control device receives one or more descriptors through the USB interface, each descriptor corresponding to a function of the electronic device. Then the control device matches each descriptor corresponding to each function with one driver file corresponding to each function, and after the matching is successful, determines a virtual function device corresponding to execution of each function. In response to receiving an operating command for executing one function, the control device sends the operating command to the corresponding virtual function device to the function to be executed through a corresponding driver interface, such that the corresponding virtual function device is operated on the electronic device. | 2016-03-17 |
20160077983 | PROCESSOR COMMUNICATIONS - A processor module including a processor configured to share data with at least one further processor module processor; and a memory mapped peripheral configured to communicate with at least one further processor memory mapped peripheral to control the sharing of the data, wherein the memory mapped peripheral includes a sender part including a data request generator configured to output a data request indicator to the further processor module dependent on a data request register write signal from the processor; and an acknowledgement waiting signal generator configured to output an acknowledgement waiting signal to the processor dependent on a data acknowledgement signal from the further processor module, wherein the data request generator data request indicator is further dependent on the data acknowledgement signal and the acknowledgement waiting signal generator acknowledgement waiting signal is further dependent on the acknowledgement waiting register write signal. | 2016-03-17 |
20160077984 | MECHANISM FOR MANAGING ACCESS TO AT LEAST ONE SHARED INTEGRATED PERIPHERAL OF A PROCESSING UNIT AND A METHOD OF OPERATING THEREOF - The present application relates to a mechanism for managing access to at least one shared integrated peripheral of a processing unit and a method of operating thereof. The mechanism is operative in an available state and a locked state. The mechanism comprises at least one context register and a bus interface for receiving a request. A filtering unit obtains information relating to a context of the received request. If in the available state, a managing unit loads the context register with the obtained context information; and grants access in response to the received request. If in the locked state, the managing unit detects whether the obtained context information matches with the context information stored in the context register; and if the obtained and stored context information match, grants access in response to the received request. Otherwise, access is denied. | 2016-03-17 |