Shared Memory Area Patents (Class 711/147)
-
Patent number: 8751755Abstract: A volatile memory associated with a mass storage controller and a flash memory module. The volatile memory includes a number of tables containing information related to the flash memory storage, including a table storing physical flash memory addresses and a plurality of tables containing metadata.Type: GrantFiled: April 8, 2008Date of Patent: June 10, 2014Assignee: Sandisk Enterprise IP LLCInventors: Douglas A. Prins, Aaron K. Olbrich
-
Patent number: 8751833Abstract: A data processing apparatus is provided comprising first processing circuitry, second processing circuitry and shared processing circuitry. The first processing circuitry and second processing circuitry are configured to operate in different first and second power domains respectively and the shared processing circuitry is configured to operate in a shared power domain. The data processing apparatus forms a uni-processing environment for executing a single instruction stream in which either the first processing circuitry and the shared processing circuitry operate together to execute the instruction stream or the second processing circuitry and the shared processing circuitry operate together to execute the single instruction stream. Execution flow transfer circuitry is provided for transferring at least one bit of processing-state restoration information between the two hybrid processing units.Type: GrantFiled: April 30, 2010Date of Patent: June 10, 2014Assignee: ARM LimitedInventor: Stephen John Hill
-
Publication number: 20140156952Abstract: According to one embodiment, an information processing apparatus with mode switching function, includes a first management module which is capable of accessing a predetermined area of a memory, and a second management module which is capable of accessing the predetermined area and another area of the memory. The first management module is incapable of accessing the other area of the memory. The second management module is configured to exchange information in the predetermined area for information in the other area, in accordance with mode switching.Type: ApplicationFiled: August 19, 2013Publication date: June 5, 2014Applicant: KABUSHIKI KAISHA TOSHIBAInventor: Kentaro Takeda
-
Publication number: 20140156953Abstract: A method and apparatus for unified concurrency control in a Software Transactional Memory (STM) is herein described. A transaction record associated with a memory address referenced by a transactional memory access operation includes optimistic and pessimistic concurrency control fields. Access barriers and other transactional operations/functions are utilized to maintain both fields of the transaction record, appropriately. Consequently, concurrent execution of optimistic and pessimistic transactions is enabled.Type: ApplicationFiled: September 16, 2013Publication date: June 5, 2014Inventors: Ali-Reza Adl-Tabatabai, Moshe Bach, Sion Berkowits, James Henry Cownie, Yang Ni, Jeffrey V. Olivier, Bratin Saha, Ady Tal, Adam Welc
-
Patent number: 8745340Abstract: Various embodiments for reducing communication between cluster nodes and optimizing failover processing in a distributed shared memory (DSM)-based application by at least one processor device are provided. In one embodiment, for a data structure operable on a DSM, a read-mostly portion is maintained in a single copy sharable between the cluster nodes while an updatable portion is maintained in multiple copies, each of the multiple copies dedicated to a single cluster node.Type: GrantFiled: June 4, 2012Date of Patent: June 3, 2014Assignee: International Business Machines CorporationInventors: Lior Aronovich, Asaf Levy, Liran Loya
-
Patent number: 8745312Abstract: A non-volatile memory may include a plurality of map blocks for storing a plurality of map units, the map units representing mapping information between physical addresses and logical addresses. A storage device may include such a non-volatile memory. A method of mapping such a non-volatile memory may include writing historical information regarding locations of valid map units among the map units included in map blocks previously allocated among the map blocks when a new map block among the map blocks is allocated, the valid map units representing valid mapping information, and constructing a map table including all of the valid mapping information based on the historical information and a result of searching a map block recently allocated among the map blocks.Type: GrantFiled: February 21, 2008Date of Patent: June 3, 2014Assignee: Samsung Electronics Co., Ltd.Inventors: Eun-Jin Yun, Hye-Young Kim, Young-Joon Choi, Dong-Gi Lee, Jin-Hyuk Kim
-
Publication number: 20140149691Abstract: A data processing system includes multiple data processing apparatuses; a peripheral apparatus; memory that is shared by the data processing apparatuses and the peripheral apparatus; peripheral memory provided corresponding to the peripheral apparatus; and a memory managing unit that secures in any one among the memory and the peripheral memory, an area for a thread that is based on thread information, the area being secured based on the thread information that is read out from a heap area that sequentially stores the thread information that is executed at any one among the data processing apparatuses and the peripheral apparatus.Type: ApplicationFiled: February 4, 2014Publication date: May 29, 2014Applicant: FUJITSU LIMITEDInventors: Koichiro Yamashita, Hiromasa Yamauchi, Takahisa Suzuki, Koji Kurihara
-
Patent number: 8739164Abstract: An apparatus and method is disclosed for a computer processor configured to access a memory shared by a plurality of processing cores and to execute a plurality of memory access operations in a transactional mode as a single atomic transaction and to suspend the transactional mode in response to determining an implicit suspend condition, such as a program control transfer. As part of executing the transaction, the processor marks data accessed by the speculative memory access operations as being speculative data. In response to determining a suspend condition (including by detecting a control transfer in an executing thread) the processor suspends the transactional mode of execution, which includes setting a suspend flag and suspending marking speculative data. If the processor later detects a resumption condition (e.g., a return control transfer corresponding to a return from the control transfer), the processor is configured to resume the marking of speculative data.Type: GrantFiled: February 24, 2010Date of Patent: May 27, 2014Assignee: Advanced Micro Devices, Inc.Inventors: Jaewoong Chung, David S. Christie, Michael P. Hohmuth, Stephan Diestelhorst, Martin Pohlack
-
Patent number: 8738841Abstract: A storage controller connected to a flash memory storage module, the controller and module including multiple sets of buffers. The buffers are part of one or more pipelines through which data is moved between the storage module and one or more hosts.Type: GrantFiled: April 8, 2008Date of Patent: May 27, 2014Assignee: Sandisk Enterprise IP LLC.Inventors: Aaron K. Olbrich, Douglas A. Prins
-
Critical path deterministic execution of multithreaded applications in a transactional memory system
Patent number: 8739163Abstract: A hardware and/or software facility for controlling the order of operations performed by threads of a multithreaded application on a multiprocessing system is provided. The facility may serialize or selectively-serialize execution of the multithreaded application such that, given the same input to the multithreaded application, the multiprocessing system deterministically interleaves operations, thereby producing the same output each time the multithreaded application is executed. The facility divides the execution of the multithreaded application code into two or more quantum specifying a deterministic number of operations, and the facility specifies a deterministic order in which the threads execute the two or more quantum. The deterministic number of operations may be adapted to follow the critical path of the multithreaded application. Specified memory operations may be executed regardless of the deterministic order, such as those accessing provably local data.Type: GrantFiled: March 11, 2009Date of Patent: May 27, 2014Assignee: University of WashingtonInventors: Luis Ceze, Mark H. Oskin, Joseph Luke Devietti, Brandon Michael Lucia -
Publication number: 20140143507Abstract: A technique for managing pinned memory in a data processing system includes determining whether a first loadable module is completely utilizing pinned memory assigned to the first loadable module. In response to determining the first loadable module is not completely utilizing the pinned memory assigned to the first loadable module, the pinned memory that is not being utilized by the first loadable module is converted to kernel lock memory. In response to a second loadable module requesting pinned memory and non-kernel lock memory not being available to meet the request, one or more pages of the kernel lock memory are assigned to the second loadable module. In response to the second loadable module requesting the pinned memory and the non-kernel lock memory being available to meet the request, one or more pages of the non-kernel lock memory are assigned to the second loadable module.Type: ApplicationFiled: November 20, 2012Publication date: May 22, 2014Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: FREDERIC DURAIRAJ MARIA JOSEPH, KEERTHI B. KUMAR, VISHAL R. MANSUR, CHETAN L. GAONKAR
-
Publication number: 20140143508Abstract: A memory system includes a memory device and a memory controller. The memory device includes a plurality of memory dies having different page sizes. The memory controller generates a plurality of chip selection signals for activating the plurality of memory dies based on the reordering number of requests received from a processor.Type: ApplicationFiled: March 16, 2013Publication date: May 22, 2014Inventors: Yong Kee KWON, Hyung Dong LEE, Young Suk MOON, Hyung Gyun YANG
-
Publication number: 20140143486Abstract: The MSMC (Multicore Shared Memory Controller) described is a module designed to manage traffic between multiple processor cores, other mastering peripherals or DMA, and the EMIF (External Memory InterFace) in a multicore SoC. The invention unifies all transaction sizes belonging to a slave previous to arbitrating the transactions in order to reduce the complexity of the arbitration process and to provide optimum bandwidth management among all masters. Two consecutive slots are assigned per cache line access to automatically guarantee the atomicity of all transactions within a single cache line. The need for synchronization among all the banks of a particular SRAM is eliminated, as synchronization is accomplished by assigning back to back slots.Type: ApplicationFiled: October 23, 2013Publication date: May 22, 2014Applicant: Texas Instruments IncorporatedInventors: Kai Chirca, Matthew D. Pierson
-
Publication number: 20140143509Abstract: The present provides a method for operating a module by a processor. The method includes generating, by at least one task being executed on the processor, control information for controlling operation of the module. The module includes an arrangement of a plurality of cells, including a bus system. At least some of the cells having arithmetic and logic units. At least some of the cells being arranged in at least two dimensions. The method further including writing, by the processor, the control information into a memory being shared with the module in a list-like manner to form a list of operations. The method further including executing, by the module, the operations listed in the list.Type: ApplicationFiled: January 23, 2014Publication date: May 22, 2014Applicant: PACT XPP TECHNOLOGIES AGInventor: Martin Vorbach
-
Patent number: 8732350Abstract: A system for improving direct memory access (DMA) offload. The system includes a processor, a data DMA engine and memory components. The processor selects an executable command comprising subcommands. The DDMA engine executes DMA operations related to a subcommand to perform memory transfer operations. The memory components store the plurality of subcommands and status data resulting from DMA operations. Each of the memory components has a corresponding token associated therewith. Possession of a token allocates its associated memory component to the processor or the DDMA engine possessing the token, making it inaccessible to the other. A first memory component and a second memory component of the plurality of memory components are used by the processor and the DDMA engine respectively and simultaneously. Tokens, e.g., the first and/or the second, are exchanged between the DDMA engine and the processor when the DDMA engine and/or the microcontroller complete accessing associated memory components.Type: GrantFiled: December 19, 2008Date of Patent: May 20, 2014Assignee: NVIDIA CorporationInventors: Dmitry Vyshetski, Howard Tsai, Paul J. Gyugyi
-
Patent number: 8732354Abstract: A method and apparatus for controlling access to a storage area network among a group of hosts in a distributed computing environment. A host requests access to the storage area network by issuing an input/output request, and the input/output request is intercepted at the dynamic multipath (DMP) layer. The DMP layer checks the input/output request against an access control list. The DMP layer can grant or deny the input/output request from the host system. If the input/output request is granted, then the DMP layer passes on the input/output request to the HBA driver layer and the host is allowed to access the storage area network. If the request to access the storage area network is denied, the DMP management layer can initiate an appropriate response, such as a security procedure or generation of an error message alerting a user the request has been denied.Type: GrantFiled: September 30, 2005Date of Patent: May 20, 2014Assignee: Symantec Operating CorporationInventor: Tommi Salli
-
Patent number: 8732412Abstract: Systems and methods for implementing a distributed shared memory (DSM) in a computer cluster in which an unreliable underlying message passing technology is used, such that the DSM efficiently maintains coherency and reliability. DSM agents residing on different nodes of the cluster process access permission requests of local and remote users on specified data segments via handling procedures, which provide for recovering of lost ownership of a data segment while ensuring exclusive ownership of a data segment among the DSM agents detecting and resolving a no-owner messaging deadlock, pruning of obsolete messages, and recovery of the latest contents of a data segment whose ownership has been lost.Type: GrantFiled: July 2, 2012Date of Patent: May 20, 2014Assignee: International Business Machines CorporationInventors: Lior Aronovich, Ron Asher
-
Patent number: 8732411Abstract: Technologies for eliminating duplicate data within a storage system can efficiently identify and eliminate duplication by remapping borrower regions to share physical storage space with lender regions. Block-level de-duplication can co-exist with storage architectures for thin provisioning and snapshot management. Lending maps can track redirected pointers from borrower regions to shared physical storage from lender regions. The lending maps can track the freed status of regions to support efficient write I/O operations without defaulting to unnecessary read-modify-write cycles to complete data writes. Redundancy of de-duplicated data can maintain one or more copies to support recovery from media errors. Candidate regions for de-duplication can be identified by monitoring the times and patterns of data access operations. A sampled mechanism for calculating and comparing signatures of data blocks can support the efficient identification of duplicated data within the storage system.Type: GrantFiled: November 19, 2008Date of Patent: May 20, 2014Assignee: American Megatrends, Inc.Inventors: Paresh Chatterjee, Srikumar Subramanian, Sharon Enoch, Raghavan Sowrirajan
-
Publication number: 20140136798Abstract: A transactional memory (TM) receives a lookup command across a bus from a processor. The command includes a memory address. In response to the command, the TM pulls an input value (IV). The memory address is used to read a word containing multiple result values (RVs), multiple reference values, and multiple prefix values from memory. A selecting circuit within the TM uses a starting bit position and a mask size to select a portion of the IV. The portion of the IV is a lookup key value (LKV). Mask values are generated based on the prefix values. The LKV is masked by each mask value thereby generating multiple masked values that are compared to the reference values. Based on the comparison a lookup table generates a selector value that is used to select a result value. The selected result value is then communicated to the processor via the bus.Type: ApplicationFiled: November 13, 2012Publication date: May 15, 2014Applicant: Netronome Systems, Inc.Inventor: Gavin J. Stark
-
Patent number: 8725940Abstract: A method begins by a processing module receiving redundant array of independent disks (RAID) data and determining whether to store the RAID data in at least one of a RAID format and in a dispersed storage network (DSN) format. The method continues with the processing module converting at least a portion of the RAID data into at least one set of encoded data slices when the at least a portion of the RAID data is to be stored in the DSN format. The method continues with the processing module outputting the at least one set of encoded data slices to a DSN memory.Type: GrantFiled: December 31, 2010Date of Patent: May 13, 2014Assignee: Cleversafe, Inc.Inventors: Gary W. Grube, Jason K. Resch, Timothy W. Markison
-
Patent number: 8725955Abstract: A chip having integrated multiple processor cores and a data processing method are disclosed. The processor chip includes an MP core (main processor core), an AP core (application processor core) which performs a processing function designated by a control of the MP core, a first SM controller which sets a path such that the MP core is coupled with a shared memory, and a second SM controller which sets a path such that the AP core is coupled with the shared memory. By virtue of the present invention, the number of chips installed can be minimized, to allow efficient utilization of PCB space and enable a compact size for a portable terminal.Type: GrantFiled: January 24, 2008Date of Patent: May 13, 2014Assignee: Mtekvision Co., Ltd.Inventor: Jong-Sik Jeong
-
Patent number: 8725956Abstract: A system and method for memory sharing among computer programs is disclosed. A method for memory sharing among computer programs includes identifying memory units of a plurality of memory units having identical contents, collapsing the identified memory units into a single merged memory page, and mapping the single merged memory page into an associated shared physical memory location. The method further includes when a request to write to a memory unit merged into the single merged memory page is received: copying, by a computer system, contents in the associated shared physical memory location to a different memory location, and redirecting, by the computer system, the request to the different memory location.Type: GrantFiled: May 14, 2012Date of Patent: May 13, 2014Assignee: Red Hat, Inc.Inventors: Izik Eidus, Andrea Arcangeli, Christopher M. Wright
-
Publication number: 20140129783Abstract: A system and method for allocating shared memory of differing properties to shared data objects and a hybrid stack data structure. In one embodiment, the system includes: (1) a hybrid stack creator configured to create, in the shared memory, a hybrid stack data structure having a lower portion having a more favorable property and a higher portion having a less favorable property and (2) a data object allocator associated with the hybrid stack creator and configured to allocate storage for shared data object in the lower portion if the lower portion has a sufficient remaining capacity to contain the shared data object and alternatively allocate storage for the shared data object in the higher portion if the lower portion has an insufficient remaining capacity to contain the shared data object.Type: ApplicationFiled: December 21, 2012Publication date: May 8, 2014Applicant: NVIDIAInventors: Jaydeep Marathe, Gautam Chakrabarti, Yuan Lin, Okwan Kwon, Amit Sabne
-
Patent number: 8717375Abstract: The subject matter of this specification can be embodied in, among other things, a method that includes computer-implemented graphics frame buffer process that establishes on a computing device a graphics frame buffer accessible to be written by an application process and to be read by a graphics server process. The method further comprises generating a plurality of control bits whose value or values control access to the frame buffer by the application process and the graphics server process and reading frames from the frame buffer using the value or values in the plurality of control bits.Type: GrantFiled: January 31, 2013Date of Patent: May 6, 2014Assignee: Google Inc.Inventor: Mathias Marc Agopian
-
Patent number: 8719524Abstract: A storage system in an embodiment of this invention comprises a non-volatile storage area for storing write data from a host, a cache area capable of temporarily storing the write data before storing the write data in the non-volatile storage area, and a controller that determines whether to store the write data in the cache area or to store the write data in the non-volatile storage area without storing the write data in the cache area, and stores the write data in the determined area.Type: GrantFiled: October 7, 2011Date of Patent: May 6, 2014Assignee: Hitachi, Ltd.Inventors: Tomohiro Yoshihara, Akira Deguchi, Hiroaki Akutsu
-
Patent number: 8719513Abstract: In a virtualized system using memory page sharing, a method is provided for maintaining sharing when Guest code attempts to write to the shared memory. In one embodiment, virtualization logic uses a pattern matcher to recognize and intercept page zeroing code in the Guest OS. When the page zeroing code is about to run against a page that is already zeroed, i.e., contains all zeros, and is being shared, the memory writes in the page zeroing code have no effect. The virtualization logic skips over the writes, providing an appearance that the Guest OS page zeroing code has run to completion but without performing any of the writes that would have caused a loss of page sharing. The pattern matcher can be part of a binary translator that inspects code before it executes.Type: GrantFiled: February 15, 2013Date of Patent: May 6, 2014Assignee: VMware, Inc.Inventor: Ole Agesen
-
Publication number: 20140122801Abstract: Embodiments are described for a method for controlling access to memory in a processor-based system comprising monitoring a number of interference events, such as bank contentions, bus contentions, row-buffer conflicts, and increased write-to-read turnaround time caused by a first core in the processor-based system that causes a delay in access to the memory by a second core in the processor-based system; deriving a control signal based on the number of interference events; and transmitting the control signal to one or more resources of the processor-based system to reduce the number of interference events from an original number of interference events.Type: ApplicationFiled: October 29, 2012Publication date: May 1, 2014Applicant: ADVANCED MICRO DEVICES, INC.Inventors: Gabriel LOH, James O'CONNOR
-
Patent number: 8713255Abstract: A system, method, and computer program product are provided for conditionally sending a request for data to a home node. In operation, a first request for data is sent to a first cache of a node. Additionally, if the data does not exist in the first cache, a second request for the data is sent to a second cache of the node. Furthermore, a third request for the data is conditionally sent to a home node.Type: GrantFiled: May 1, 2013Date of Patent: April 29, 2014Assignee: NetLogic Microsystems, Inc.Inventors: Gaurav Garg, David T. Hass
-
Publication number: 20140115276Abstract: Partitioned global address space (PGAS) programming language source code is retrieved by an executed PGAS compiler. At least one shared memory array access indexed by an affine expression that includes a distinct thread identifier that is constant and different for each of a group of program execution threads targeted to execute the PGAS source code is identified within the PGAS source code. It is determined whether the at least one shared memory array access results in a local shared memory access by all of the group of program execution threads for all references to the at least one shared memory array access during execution of a compiled executable of the PGAS source code. A direct memory access executable code is generated for each shared memory array access determined to result in the local shared memory access by all of the group of program execution threads.Type: ApplicationFiled: July 29, 2011Publication date: April 24, 2014Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Salem Derisavi, Ettore Tiotto
-
Patent number: 8706837Abstract: An SAS domain map is automatically generated at an SAS concentrator switch by a virtual mapping device that presents itself as a target for discovery by SAS devices interfaced with the concentrator, such as information handling systems and storage devices. During the SAS protocol discovery process, the virtual mapping device generates the SAS domain map by acquiring the device name and the device port for each concentrator port that interfaces with a device. A management application running on the concentrator applies the SAS domain map to provide network functions, such as zoning or diagnostics.Type: GrantFiled: March 21, 2011Date of Patent: April 22, 2014Assignee: Dell Products L.P.Inventors: Rohit Chawla, Gaurav Chawla, Farzad Khosrowpour
-
Patent number: 8706975Abstract: A shared memory management system and method are described. In one embodiment, a memory management system includes a memory management unit for coordinating context memory storage block binds and independently controlling access to the context memory without interference from other engine activities. In one exemplary implementation the context information is included in a block and the memory management unit binds the block to instance memory. The instance memory can be protected memory. The instance memory can also support multiple channels associated with the plurality of engines. In one exemplary implementation, the instance memory includes a pointer to a page table. The instance memory can also include context save and restore data and each one of the plurality of engines initiates a unique block bind by indicating an association between their engine ID and a given block of instance memory.Type: GrantFiled: November 1, 2006Date of Patent: April 22, 2014Assignee: Nvidia CorporationInventors: David B. Glasco, John S. Montrym, Lingfeng Yuan
-
Patent number: 8707087Abstract: A backup and restoration process which first attempts to recover information blocks from locally connected information handling systems executing a backup/restore service before looking to the slower access cloud store to recover data blocks.Type: GrantFiled: May 18, 2010Date of Patent: April 22, 2014Assignee: Dell Products L.P.Inventors: Carlton Andrews, Clint H. O'Connor, Yuan-Chang Lo
-
Patent number: 8707062Abstract: For one disclosed embodiment, a processor comprises a first processor core, a second processor core, and a cache memory. The first processor core is to save a state of the first processor core and to enter a mode in which the first processor core is powered off. The second processor core is to save a state of the second processor core and to enter a mode in which the second processor core is powered off. The cache memory is to be powered when the first processor core is powered off. The first processor core is to restore the saved state of the first processor core in response to the first processor core transitioning to a mode in which the first processor core is powered. The second processor core is to restore the saved state of the second processor core in response to the second processor core transitioning to a mode in which the second processor core is powered. Other embodiments are also disclosed.Type: GrantFiled: February 16, 2010Date of Patent: April 22, 2014Assignee: Intel CorporationInventors: Sanjeev Jahagirdar, Varghese George, John B. Conrad, Robert Milstrey, Stephen A. Fischer, Alon Naveh, Shai Rotem
-
Patent number: 8706935Abstract: Multiple devices are provided access to a common, single instance of data and may use it without consuming resources beyond what would be required if only one device were using that data in a traditional configuration. In order to retain the device-specific differences, they are kept separate, but their relationship to the common data is maintained. All of this is done in a fashion that allows a given device to perceive and use its data as though it was its own separately accessible data.Type: GrantFiled: April 6, 2012Date of Patent: April 22, 2014Assignee: DataCore Software CorporationInventors: Jeff Z. Slutzky, Roni J. Putra, Ziya A. Aral
-
Publication number: 20140108885Abstract: An integrated circuit includes a memory having an address space and a memory controller coupled to the memory for accessing the address space in response to received memory accesses. The memory controller further accesses a plurality of data elements in a first portion of the address space, and reliability data corresponding to the plurality of data elements in a second portion of the address space.Type: ApplicationFiled: October 11, 2012Publication date: April 17, 2014Applicant: Advanced Micro Devices, Inc.Inventors: Gabriel H. Loh, Vilas K. Sridharan
-
Patent number: 8700856Abstract: According to a prior art storage subsystem, shared memories are mirrored in main memories of two processors providing redundancy. When the consistency of writing order of data is not ensured among mirrored shared memories, the processors must read only one of the mirrored shared memories to have the write order of the read data correspond among the two processors. As a result, upon reading data from the shared memories, it is necessary for a processor to read data from the main memory of the other processor, so that the overhead is increased compared to the case where the respective processors read their respective main memories. According to the storage subsystem of the present invention, a packet redirector having applied a non-transparent bridge enables to adopt a PCI Express multicast to the writing of data from the processor to the main memory, so that the order of writing data into the shared memories can be made consistent among the mirrored memories.Type: GrantFiled: March 23, 2012Date of Patent: April 15, 2014Assignee: Hitachi, Ltd.Inventors: Katsuya Tanaka, Masanori Takada, Shintaro Kudo
-
Patent number: 8700865Abstract: A shared resource management system and method are described. In one embodiment a shared resource management system includes a plurality of engines, a shared resource, and a shared resource management unit. In one exemplary implementation the shared resource is a memory and the shared resource management unit is a memory management unit (MMU). The plurality of engines perform processing. The shared resource supports the processing. For example, a memory stores information and instructions for the engines. The shared resource management unit manages memory operations and handles access requests associated with compressed data.Type: GrantFiled: November 2, 2006Date of Patent: April 15, 2014Assignee: NVIDIA CorporationInventors: James M. Van Dyke, John H. Edmondson, Lingfeng Yuan, Brian D. Hutsell
-
Patent number: 8700862Abstract: A compression status bit cache provides on-chip availability of compression status bits used to determine how many bits are needed to access a potentially compressed block of memory. A backing store residing in a reserved region of attached memory provides storage for a complete set of compression status bits used to represent compression status of an arbitrarily large number of blocks residing in attached memory. Physical address remapping (“swizzling”) used to distribute memory access patterns over a plurality of physical memory devices is partially replicated by the compression status bit cache to efficiently integrate allocation and access of the backing store data with other user data.Type: GrantFiled: December 3, 2008Date of Patent: April 15, 2014Assignee: Nvidia CorporationInventors: David B. Glasco, Peter B. Holmqvist, George R. Lynch, Patrick R. Marchand, Karan Mehra, James Roberts
-
Patent number: 8694997Abstract: A hardware and/or software facility for controlling the order of operations performed by threads of a multithreaded application on a multiprocessing system is provided. The facility may serialize or selectively-serialize execution of the multithreaded application such that, given the same input to the multithreaded application, the multiprocessing system deterministically interleaves operations, thereby producing the same output each time the multithreaded application is executed. The facility divides the execution of the multithreaded application code into two or more quantum specifying a deterministic number of operations, and the facility specifies a deterministic order in which the threads execute the two or more quantum. The facility may operate together with a transactional memory system.Type: GrantFiled: December 12, 2008Date of Patent: April 8, 2014Assignee: University of WashingtonInventors: Luis H. Ceze, Mark H. Oskin
-
Patent number: 8694737Abstract: Subject matter disclosed herein relates to a system of one or more processors that includes persistent memory.Type: GrantFiled: June 9, 2010Date of Patent: April 8, 2014Assignee: Micron Technology, Inc.Inventors: John Rudelic, August Camber, Mostafa Naguib Abdulla
-
Patent number: 8694730Abstract: A binary tree based multi-level cache system for multi-core processors and its two possible implementations LogN and LogN+1 models maintaining a true pyramid is described.Type: GrantFiled: March 4, 2011Date of Patent: April 8, 2014Inventor: Muhammad Ali Ismail
-
Patent number: 8694814Abstract: A method for data storage includes, in a host system that operates alternately in a normal state and a hibernation state, reserving a hibernation storage space in a non-volatile storage device for storage of hibernation-related information in preparation for entering the hibernation state. While the host system is operating in the normal state, a storage task other than storage of the hibernation-related information is performed using at least a portion of the reserved hibernation storage space.Type: GrantFiled: September 12, 2010Date of Patent: April 8, 2014Assignee: Apple Inc.Inventors: Tavi Salomon, Ofir Shalvi, Michael Shachar, Oren Golov
-
Patent number: 8688951Abstract: Operating system virtual memory management for hardware transactional memory. A system includes an operating system deciding to unmap a first virtual page. As a result, the operating system removes the mapping of the first virtual page to the first physical page from the virtual memory page table. As a result, the operating system performs an action to discard transactional memory hardware state for at least the first physical page. Embodiments may further suspend hardware transactions in kernel mode. Embodiments may further perform soft page fault handling without aborting a hardware transaction, resuming the hardware transaction upon return to user mode, and even successfully committing the hardware transaction.Type: GrantFiled: July 20, 2012Date of Patent: April 1, 2014Assignee: Microsoft CorporationInventors: Koichi Yamada, Gad Sheaffer, Ali-Reza Adl-Tabatabai, Landy Wang, Martin Taillefer, Arun Kishan, David Callahan, Jan Gray, Vadim Bassin
-
Patent number: 8688944Abstract: An embedded controller includes a microcontroller core and memory control circuitry. The memory control circuitry is configured to communicate with a Central Processing Unit (CPU) chipset over a first Serial Peripheral Interface (SPI), for which bus arbitration is not supported, at a first clock rate, to communicate with a memory over a second SPI at a second, fixed clock rate, to relay memory transactions between the CPU chipset and the memory over the first and second SPIs, to identify time intervals in which no memory transactions are relayed on the second SPI and to retrieve from the memory information for operating the microcontroller core during the identified time intervals.Type: GrantFiled: September 20, 2011Date of Patent: April 1, 2014Assignee: Nuvoton Technology CorporationInventors: Moshe Alon, Michal Schramm, Nir Tasher
-
Patent number: 8688904Abstract: A number of accesses of a portion of data at a first storage device is accumulated. The number of accesses is periodically decremented by a predetermined amount. Based at least in part on the number of accesses, it is determined whether the portion of data of is a candidate for migration to a second storage device.Type: GrantFiled: May 23, 2005Date of Patent: April 1, 2014Assignee: Hewlett-Packard Development Company, L.P.Inventors: Ismail Ari, Melanie M. Gottwals, Richard H. Henze
-
Publication number: 20140089606Abstract: Data writers desiring to update data without unduly impacting concurrent readers perform a synchronization operation with respect to plural processors or execution threads. The synchronization operation is parallelized using a hierarchical tree having a root node, one or more levels of internal nodes and as many leaf nodes as there are processors or threads. The tree is traversed from the root node to a lowest level of the internal nodes and the following node processing is performed for each node: (1) check the node's children, (2) if the children are leaf nodes, perform the synchronization operation relative to each leaf node's associated processor or thread, and (3) if the children are internal nodes, fan out and repeat the node processing with each internal node representing a new root node. The foregoing node processing is continued until all processors or threads associated with the leaf nodes have performed the synchronization operation.Type: ApplicationFiled: November 30, 2013Publication date: March 27, 2014Applicant: International Business Machines CorporationInventor: Paul E. McKenney
-
Publication number: 20140089604Abstract: A system and method for efficient dynamic utilization of shared resources. A computing system includes a shared buffer accessed by two requestors generating access requests. Any entry within the shared buffer may be allocated for use by a first requestor or a second requestor. The storage buffer stores received indications of access requests from the first requestor beginning at a first end of the storage buffer. The storage buffer stores received indications of access requests from the second requestor beginning at a second end of the storage buffer. The storage buffer maintains an oldest stored indication of an access request for the first requestor at the first end and an oldest stored indication of an access request for the second requestor at the second end. The shared buffer deallocates in-order of age from oldest to youngest allocated entries corresponding to a given requestor of the first requestor and the second requestor.Type: ApplicationFiled: September 27, 2012Publication date: March 27, 2014Applicant: APPLE INC.Inventors: Peter F. Holland, Albert C. Kuo, Joseph P. Bratt
-
Publication number: 20140085320Abstract: A system and method for efficiently processing access requests for a shared resource. A computing system includes a shared memory accessed by multiple requestors. Control logic determines two requestors seek to access a same data block within the shared memory. In response to the determination, a first requestor of the two requestors sends a read request to the shared memory on behalf of the two requestors. The second requestor of the two requestors is prevented from sending a read request. In response to detecting data is returned as a response to the read request generated by the first requestor, both the first requestor and the second requestor retrieve the data. In response to detecting a given requestor of the two requestors generates an indication that it is unable to continue retrieving the same response data, the two requestors return to generating separate, respective read requests.Type: ApplicationFiled: September 27, 2012Publication date: March 27, 2014Applicant: APPLE INC.Inventors: Peter F. Holland, Hao Chen
-
Publication number: 20140089572Abstract: The disclosed embodiments provide a system that performs distributed page-table lookups in a shared-memory multiprocessor system with two or more nodes, where each of these nodes includes a directory controller that manages a distinct portion of the system's address space. During operation, a first node receives a request for a page-table entry that is located at a physical address that is managed by the first node. The first node accesses its directory controller to retrieve the page-table entry, and then uses the page-table entry to calculate the physical address for a subsequent page-table entry. The first node determines the home node (e.g., the managing node) for this calculated physical address, and sends a request for the subsequent page-table entry to that home node.Type: ApplicationFiled: September 24, 2012Publication date: March 27, 2014Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Pranay Koka, David A. Munday, Michael O. McCracken, Herbert D. Schwetman, JR.
-
Publication number: 20140089605Abstract: A data storage device may include an interface that is arranged and configured to interface with a host, a command bus, multiple memory devices that are operably coupled to the command bus and a controller that is operably coupled to the interface and to the command bus. The controller may be arranged and configured to receive a read metadata command for a specified one of the memory devices from the host using the interface, read metadata from the specified memory device and communicate the metadata to the host using the interface.Type: ApplicationFiled: November 22, 2013Publication date: March 27, 2014Applicant: GOOGLE INC.Inventors: Albert T. Borchers, Andrew T. Swing, Robert S. Sprinkle, Jason W. Klaus