Patents Examined by Nicholas Simonetti
-
Patent number: 8898401Abstract: Methods and apparatuses are disclosed that allow for improved speculation success in execute ahead microprocessors. In some embodiments, the method may include speculatively executing a first thread of a program code while a second thread of the program code is executing, determining if a load request is serviceable from a cache line within a cache, and in the event that the load request is serviceable from the cache line, associating a first indicator bit with the cache line. The method also may include determining whether the cache line associated with the first indicator bit has been evicted, and in the event that the cache line is evicted, allowing speculative execution of the first thread to continue.Type: GrantFiled: November 7, 2008Date of Patent: November 25, 2014Assignee: Oracle America, Inc.Inventors: Chaiyasit Manovit, Paul Nicholas Loewenstein
-
Patent number: 8892841Abstract: In one embodiment, a processor may be configured to write ECC granular stores into the data cache, while non-ECC granular stores may be merged with cache data in a memory request buffer. In one embodiment, a processor may be configured to detect that a victim block writeback hits one or more stores in a memory request buffer (or vice versa) and may convert the victim block writeback to a fill. In one embodiment, a processor may speculatively issue stores that are subsequent to a load from a load/store queue, but prevent the update for the stores in response to a snoop hit on the load.Type: GrantFiled: July 9, 2012Date of Patent: November 18, 2014Assignee: Apple Inc.Inventors: Ramesh Gunna, Po-Yung Chang, Sudarshan Kadambi
-
Patent number: 8886887Abstract: A computer implemented method, software infrastructure and computer usable program code for improving application performance. A delinquent memory operation instruction is identified. A delinquent memory operation instruction is an instruction associated with cache misses that exceeds a threshold number of cache misses. A directive is inserted in a code region associated with the delinquent memory operation to form annotated code. The directive indicates an address of the delinquent memory operation instruction and a number of memory latency cycles expected to be required for the delinquent memory operation instruction to execute. The information included in the annotated code is used to optimize execution of an application associated with the delinquent memory operation instruction.Type: GrantFiled: March 15, 2007Date of Patent: November 11, 2014Assignee: International Business Machines CorporationInventors: Gheorghe Calin Cascaval, Yaoqing Gao, Allen Russell Martin, Mark Peter Mendell
-
Patent number: 8880826Abstract: A Write-Once Read-Many (WORM) memory controller receives data from a processing system that is addressed to a location in a storage device, stores the data and a tag at the location, receives second data from the processing system that is addressed to the location, determines that the location includes the tag, and prevents the second data from being stored at the location based upon the presence of the tag. A WORM memory device sends a reply to a controller in response to an initialization command. The reply includes an address number that corresponds with the storage capacity of the WORM memory device. The WORM memory device sends another reply to another controller in response to another initialization command. The initialization commands are different from each other. The other initialization reply includes an address number of zero.Type: GrantFiled: October 20, 2009Date of Patent: November 4, 2014Assignee: Dell Products, LPInventors: Jacob Cherian, Farzad Khosrowpour, Marco A. Peereboom
-
Patent number: 8856467Abstract: Methods, systems, computer program products and methods for deploying computing infrastructure for managing metadata in a storage subsystem are provided. A call is received from a client to update a portion of a metadata track. Data is also received from the client identifying at least one field of the metadata track to be updated, associated update values for the at least one field to be updated and an update type for the at least one field. A data structure field of a client interface is then populated with the identity of the at least one field and the associated update values and an opcode field of the client interface is populated with the update type. A task control block (TCB) is then allocated to the client call and, at the direction of the TCB, various operations are performed without further activity by the client. The metadata track may also be validated before being updated to ensure that the client has access only to valid updates.Type: GrantFiled: November 18, 2004Date of Patent: October 7, 2014Assignee: International business Machines CorporationInventors: Aaron S Mahar, Angelique R Budaya, James A Springer
-
Patent number: 8825960Abstract: A system and method is provided wherein, in one aspect, a currently-requested item of information is stored in a cache based on whether it has been previously requested and, if so, the time of the previous request. If the item has not been previously requested, it may not be stored in the cache. If the subject item has been previously requested, it may or may not be cached based on a comparison of durations, namely (1) the duration of time between the current request and the previous request for the subject item and (2) for each other item in the cache, the duration of time between the current request and the previous request for the other item. If the duration associated with the subject item is less than the duration of another item in the cache, the subject item may be stored in the cache.Type: GrantFiled: October 16, 2013Date of Patent: September 2, 2014Assignee: Google Inc.Inventors: Timo Burkard, David Presotto
-
Patent number: 8825961Abstract: A system and method is provided wherein, in one aspect, a currently-requested item of information is stored in a cache based on whether it has been previously requested and, if so, the time of the previous request. If the item has not been previously requested, it may not be stored in the cache. If the subject item has been previously requested, it may or may not be cached based on a comparison of durations, namely (1) the duration of time between the current request and the previous request for the subject item and (2) for each other item in the cache, the duration of time between the current request and the previous request for the other item. If the duration associated with the subject item is less than the duration of another item in the cache, the subject item may be stored in the cache.Type: GrantFiled: October 16, 2013Date of Patent: September 2, 2014Assignee: Google Inc.Inventors: Timo Burkard, David Presotto
-
Patent number: 8819358Abstract: Provided is a data storage device including two or more data storage areas including may have two or more (heterogeneous) types of nonvolatile memory cells. At least one of the data storage areas includes a plurality of memory blocks that are sequentially selected, and metadata are stored in the currently selected memory block. The memory blocks can be sequentially used and metadata can be stored in a uniformly-distributed manner throughout the data storage device. Therefore, separate merging and wear-leveling operations are unnecessary. Thus, it is possible to improve the lifetime and writing performance of a data storage device having two or more heterogeneous nonvolatile memories.Type: GrantFiled: February 19, 2013Date of Patent: August 26, 2014Assignee: Samsung Electronics Co., Ltd.Inventors: KyungWook Ye, Yul-Won Cho
-
Patent number: 8812791Abstract: A system and method is provided wherein, in one aspect, a currently-requested item of information is stored in a cache based on whether it has been previously requested and, if so, the time of the previous request. If the item has not been previously requested, it may not be stored in the cache. If the subject item has been previously requested, it may or may not be cached based on a comparison of durations, namely (1) the duration of time between the current request and the previous request for the subject item and (2) for each other item in the cache, the duration of time between the current request and the previous request for the other item. If the duration associated with the subject item is less than the duration of another item in the cache, the subject item may be stored in the cache.Type: GrantFiled: October 8, 2013Date of Patent: August 19, 2014Assignee: Google Inc.Inventors: Timo Burkard, David Presotto
-
Patent number: 8788760Abstract: Data access is facilitated by employing local caches and an adaptive caching strategy. Specific data is stored in each local cache and consistency is maintained between the caches. To maintain consistency, adaptive caching structures are used. The members of an adaptive caching structure are selected based on a sharing context, such as those members having a chosen association identifier or those members not having the chosen association identifier.Type: GrantFiled: November 18, 2009Date of Patent: July 22, 2014Assignee: International Business Machines CorporationInventors: Casimer M. DeCusatis, Rajaram B. Krishnamurthy, Todd A. Nelson, Anuradha Rao, Joseph H. Torella
-
Patent number: 8745309Abstract: A cooperative memory card system includes a memory card device, and a host in signal communication with the memory card device, where the host assumes at least one memory management function for the memory card device; and a corresponding method of cooperative memory management between a host and a memory card device includes selecting at least one of several memory management functions to be performed by the host for the device.Type: GrantFiled: August 3, 2007Date of Patent: June 3, 2014Assignee: Samsung Electronics Co., Ltd.Inventors: Myoung-Soo Jung, Chan-Ik Park, Sang-Jin Oh
-
Patent number: 8738871Abstract: A method and apparatus for creating and utilizing a map of files related to a virtual disk of a virtual machine. In one embodiment, the method comprises inspecting file system entries within at least one volume of the virtual disk; converting information related to file system entries into a map, where the map comprises file locations within a physical disk for the files related to the virtual disk. In another embodiment, the method comprises examining a map of an image of at least a portion of a virtual disk, accessing the image, extracting and utilizing at least one file. In yet another embodiment, the method comprises creating a map related to an image representing stored files in a virtual disk, storing the map and the image, selecting a file, examining the map, accessing the image, extracting the file from the image and restoring the file to a storage system.Type: GrantFiled: June 29, 2007Date of Patent: May 27, 2014Assignee: Symantec CorporationInventors: Timothy Michael Naftel, David Teater
-
Patent number: 8719511Abstract: A system and method is provided wherein, in one aspect, a currently-requested item of information is stored in a cache based on whether it has been previously requested and, if so, the time of the previous request. If the item has not been previously requested, it may not be stored in the cache. If the subject item has been previously requested, it may or may not be cached based on a comparison of durations, namely (1) the duration of time between the current request and the previous request for the subject item and (2) for each other item in the cache, the duration of time between the current request and the previous request for the other item. If the duration associated with the subject item is less than the duration of another item in the cache, the subject item may be stored in the cache.Type: GrantFiled: October 8, 2013Date of Patent: May 6, 2014Assignee: Google Inc.Inventors: Timo Burkard, David Presotto
-
Patent number: 8688920Abstract: A data structure of readily accessible units of memory is provided as computer useable media having computer readable program code logic providing information tables and a software emulation program to enable hardware to run new software that uses transactional memory and a bit associated with a transaction for executing transactional memory constructs. The data structure with Guest PTRAN bit is used in emulation of software written for a given computer on a different computer which executes a different set of instructions. The emulating instructions are used to provide transactional memory instructions on a computer which does not support those instructions natively.Type: GrantFiled: October 30, 2007Date of Patent: April 1, 2014Assignee: International Business Machines CorporationInventor: Thomas J. Heller, Jr.
-
Patent number: 8671256Abstract: A system and computer program product for migrating contents of a memory on a virtual machine. The system includes a source virtual machine executing on a host system, the source virtual machine including a memory. The system also includes a hypervisor executing on the host system. The hypervisor is in communication with the source virtual machine and includes instructions. The instructions facilitate establishing communication from the source virtual machine to a target virtual machine, the source virtual machine including a memory. The contents of the memory on the source virtual machine are transmitted to the target virtual machine. The contents of the memory on the source virtual machine include a plurality of pages. It is determined if all or a subset of the pages have been modified on the source virtual machine subsequent to being transmitted to the target virtual machine.Type: GrantFiled: August 27, 2007Date of Patent: March 11, 2014Assignee: International Business Machines CorporationInventor: Eli M. Dow
-
Patent number: 8661211Abstract: A method for migrating contents of a memory on a virtual machine. The method includes computer instructions for establishing communication from a source virtual machine to a target virtual machine, the source virtual machine including a memory. The contents of the memory on the source virtual machine are transmitted to the target virtual machine. The contents of the memory on the source virtual machine include a plurality of pages. It is determined if all or a subset of the pages have been modified on the source virtual machine subsequent to being transmitted to the target virtual machine. If it is determined that all or a subset of the pages have been modified, then the modified pages, including a page location and page content for each of the modified pages, are transmitted to the target virtual machine. The determining and transmitting the modified pages continues until the number of remaining pages that have been modified is less than a threshold.Type: GrantFiled: August 27, 2007Date of Patent: February 25, 2014Assignee: International Business Machines CorporationInventor: Eli M. Dow
-
Patent number: 8645641Abstract: In a particular embodiment, a storage device includes a controller that is adapted to receive environmental data from a plurality of environmental sensors, where the environmental data is related to an operating environment of the storage device. Further, the controller is adapted to receive state information related to the data storage medium from a plurality of firmware detectors, to weight the received environmental data and the received state information according to a pre-determined weighting table, and to dynamically manage at least one attribute of the storage device based on the weighted environmental data and the weighted state information.Type: GrantFiled: December 17, 2008Date of Patent: February 4, 2014Assignee: Seagate Technology LLCInventors: Michael Edward Baum, Jim Joseph Touchton, Timothy Richard Feldman, Mike Montemorra
-
Patent number: 8601227Abstract: A method includes determining an amount of memory space in a memory device available for memory mirroring. The method further includes presenting the available memory space to an operating system. The method further includes selecting at least a portion of the amount of memory space to be used for memory mirroring with the operating system. The method further includes adding a non-selected portion of the available memory to memory space available to the operating system during operation. An associated system and machine readable medium are also disclosed.Type: GrantFiled: March 16, 2011Date of Patent: December 3, 2013Assignee: Intel CorporationInventors: Robert C. Swanson, John V. Lovelace, Larry D. Aaron, Jr., Sugumar Govindarajan
-
Patent number: 8583876Abstract: A system is described in which a plurality of host computers are coupled to a storage system for storing and retrieving data in the storage system. The storage system includes individually addressable units of storage such as volumes or logical unit numbers. A security management system controls access to each of the individually addressable units of storage based upon the identification of the host permitted to access that unit of storage.Type: GrantFiled: March 27, 2008Date of Patent: November 12, 2013Assignee: Hitachi, Ltd.Inventor: Yuichi Taguchi
-
Patent number: 8572327Abstract: A system and method is provided wherein, in one aspect, a currently-requested item of information is stored in a cache based on whether it has been previously requested and, if so, the time of the previous request. If the item has not been previously requested, it may not be stored in the cache. If the subject item has been previously requested, it may or may not be cached based on a comparison of durations, namely (1) the duration of time between the current request and the previous request for the subject item and (2) for each other item in the cache, the duration of time between the current request and the previous request for the other item. If the duration associated with the subject item is less than the duration of another item in the cache, the subject item may be stored in the cache.Type: GrantFiled: August 19, 2011Date of Patent: October 29, 2013Assignee: Google Inc.Inventors: Timo Burkard, David Presotto