Patents by Inventor Dana Groff

Dana Groff has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 12670416
    Abstract: Methods and systems for obtaining data having a first format, converting the data to a second format, storing the converted data in memory accessible by at least one parallel processing unit, and processing the converted data stored in the memory using the at least one parallel processing unit.
    Type: Grant
    Filed: December 6, 2022
    Date of Patent: June 30, 2026
    Assignee: NVIDIA CORPORATION
    Inventors: Alvin Ihsani, Shaul Arazi, Elena Agostini, Penn Tasinga, Carl Everett Lacey, Jr., Dana Groff, Dotan David Levi, Wojciech Wasko, Vishwesh Nath, Sachidanand Alle
  • Publication number: 20240220831
    Abstract: Approaches presented herein provide for the management of artificial intelligence (AI)-related resources in a distributed resource environment, such as may be used to support accelerated machine learning (ML) applications on behalf of different users. Management functionality can be provided using an AI manager, such as a management service, that can determine the requirements, capabilities, and limitations of various available AI-related components, such as those of a plurality of AI models, engines, and accelerators, as well as the hardware (e.g., graphics processing units (GPUs)) that run or make up these AI-related resources. An AI manager can determine a selection and configuration of resources that is not only appropriate for use with a specific AI model, but that can also be optimized for factors such as throughput, resource utilization, and inference latency. An AI manager can ensure compatibility of resources and configuration, and can enforce access control to models and data.
    Type: Application
    Filed: January 3, 2023
    Publication date: July 4, 2024
    Inventors: J Wyman, Pritish Nahar, Dana Groff
  • Publication number: 20240185100
    Abstract: Methods and systems for obtaining data having a first format, converting the data to a second format, storing the converted data in memory accessible by at least one parallel processing unit, and processing the converted data stored in the memory using the at least one parallel processing unit.
    Type: Application
    Filed: December 6, 2022
    Publication date: June 6, 2024
    Inventors: Alvin Ihsani, Shaul Arazi, Elena Agostini, Penn Tasinga, Carl Everett Lacey, JR., Dana Groff, Dotan David Levi, Wojciech Wasko, Vishwesh Nath, Sachidanand Alle
  • Patent number: 8910192
    Abstract: A set of application programming interfaces (“APIs”) is provided that enables an application to perform operations on multiple system resources as a single logical unit of work through a transaction. The application can then commit or roll back the entire group of changes as a single unit in a coordinated manner. The APIs expose functions and methods that take a reference to a transaction context, such as a handle, name, or pointer, as one of their parameters so that the application can manipulate the resource as a transacted operation. The transaction is bound to all created handles so that all operations on the resource using those handles are also transacted. In an illustrative example, the set of APIs are transacted name-based WIN32 APIs that take a transaction handle. The transacted APIs expose transacted operations to the application for durable system resources in the OS kernel, including the NTFS file system (New Technology File System) and registry.
    Type: Grant
    Filed: August 8, 2007
    Date of Patent: December 9, 2014
    Assignee: Microsoft Corporation
    Inventors: Dana Groff, Jonathan Cargille, Surendra Verma, Andrew Herron, Dragos Sambotin, Christian Allred, William R. Tipton, Karthik Thirumalai
  • Patent number: 8719515
    Abstract: A software transactional memory (STM) system allows the composition of traditional lock based synchronization with transactions in STM code. The STM system acquires each traditional lock the first time that a corresponding traditional lock acquire is encountered inside a transaction and defers all traditional lock releases until a top level transaction in a transaction nest commits or aborts. The STM system maintains state information associated with traditional lock operations in transactions and uses the state information to eliminate deferred traditional lock operations that are redundant. The STM system integrates with systems that implement garbage collection.
    Type: Grant
    Filed: June 21, 2010
    Date of Patent: May 6, 2014
    Assignee: Microsoft Corporation
    Inventors: Sukhdeep S. Sodhi, Yosseff Levanoni, David L. Detlefs, Lingli Zhang, Weirong Zhu, Dana Groff, Michael M. Magruder, Charles David Callahan, II
  • Patent number: 8321667
    Abstract: A security model is provided in a transactional logging infrastructure that is arranged as a protected subsystem built on an underlying secure file system. Files in the underlying file system used by virtual log streams are protected from direct user writes, and are written-to only through the protected subsystem that is brokered by a machine-wide principal so that virtual log files sharing the same multiplexed physical log are kept secure from each other. Log file handles and user- and kernel-mode objects are exposed to log clients through interfaces using consistent security semantics for both dedicated and virtual logs. Log clients are agnostic of the underlying secure file system and can only manipulate file system containers—abstract objects that implement the physical log and used to virtualize the file system by normalizing input/output operations—by using the interfaces brokered by the principal in the protected subsystem.
    Type: Grant
    Filed: February 28, 2007
    Date of Patent: November 27, 2012
    Assignee: Microsoft Corporation
    Inventors: Dexter P. Bradshaw, William R. Tipton, Dana Groff, Zoheb Lester Alexander Vacheri
  • Patent number: 8266604
    Abstract: Transactional memory compatibility type attributes are associated with intermediate language code to specify, for example, that intermediate language code must be run within a transaction, or must not be run within a transaction, or may be run within a transaction. Attributes are automatically produced while generating intermediate language code from annotated source code. Default rules also generate attributes. Tools use attributes to statically or dynamically check for incompatibility between intermediate language code and a transactional memory implementation.
    Type: Grant
    Filed: January 26, 2009
    Date of Patent: September 11, 2012
    Assignee: Microsoft Corporation
    Inventors: Dana Groff, Yosseff Levanoni, Stephen Toub, Michael McKenzie Magruder, Weirong Zhu, Timothy Lawrence Harris, Christopher William Dern, John Joseph Duffy, David Detlefs, Martin Abadi, Sukhdeep Singh Sodhi, Lingli Zhang, Alexander Dadiomov, Vinod Grover
  • Patent number: 8166481
    Abstract: A transactional memory processing system provides for the integration of transactional memory concepts at the compiler-level into a higher-level traditional transaction processing system. Atomic blocks at the compiler-level can be specified as atomic block transactions and include the features of atomicity and isolation. Actions within this atomic block transaction include the enlistment of resource managers from a repository. The repository can now include a pre-programmed memory resource manager to manage the transactional memory. As in traditional transactions, a commit protocol can be used to determine if the actions are valid and can be exposed outside of the transaction. Unlike traditional transactions, however, the transaction is not necessarily doomed if all of the actions are not validated. Rather, memory conflicts can cause a rollback and re-execution of the atomic block transaction, which can be repeated as long as necessary, until the memory resource manger votes to commit.
    Type: Grant
    Filed: January 14, 2009
    Date of Patent: April 24, 2012
    Assignee: Microsoft Corporation
    Inventors: Alexander Dadiomov, Dana Groff, Yosseff Levanoni, James E. Johnson
  • Publication number: 20110314244
    Abstract: A software transactional memory (STM) system allows the composition of traditional lock based synchronization with transactions in STM code. The STM system acquires each traditional lock the first time that a corresponding traditional lock acquire is encountered inside a transaction and defers all traditional lock releases until a top level transaction in a transaction nest commits or aborts. The STM system maintains state information associated with traditional lock operations in transactions and uses the state information to eliminate deferred traditional lock operations that are redundant. The STM system integrates with systems that implement garbage collection.
    Type: Application
    Filed: June 21, 2010
    Publication date: December 22, 2011
    Applicant: MICROSOFT CORPORATION
    Inventors: Sukhdeep S. Sodhi, Yosseff Levanoni, David L. Detlefs, Lingli Zhang, Weirong Zhu, Dana Groff, Michael M. Magruder, Charles David Callahan, II
  • Patent number: 8074027
    Abstract: A transactional logging service is provided to user-mode and kernel-mode log clients by utilizing a marshalling area to buffer a set of log records that a log client assembles into a log stream. Disk I/O (input/output) functionality is then separately brokered using a kernel-mode address space for a single dedicated physical log, or virtual logs multiplexed to a single log, which is written to stable storage that contains log records from across all of the log streams. Physical log writes are handled by a shared log flush queue and physical log reads are provided by a file system cache that underlies the service. A multi-level cache hierarchy is utilized when a log client needs to access a log record. A series of caches are queried in order of increasing latency until the targeted log record is located. The target log record is only read from disk in the event that it missed at each cache in the hierarchy.
    Type: Grant
    Filed: December 4, 2006
    Date of Patent: December 6, 2011
    Assignee: Microsoft Corporation
    Inventors: Dexter P. Bradshaw, William R. Tipton, Dana Groff
  • Patent number: 8001548
    Abstract: A processing system includes a transactional memory, first and second resource managers, and a transaction manager for a concurrent program having a thread including an atomic transaction having a side-effecting action. The first resource manager is configured to enlist in the atomic transaction and manage a resource related to the side effecting action. The second resource manager is configured to enlist in the atomic transaction and manage the transaction memory. The transaction manager is coupled to the first and second resource managers and manager is configured to receive a vote from the first and second resource managers as to whether to commit the transaction. The side-effecting action is postponed until after the transaction commits or applied along with a compensating action to the side-effecting action.
    Type: Grant
    Filed: October 20, 2008
    Date of Patent: August 16, 2011
    Assignee: Microsoft Corporation
    Inventors: Dana Groff, Alexander Dadiomov, Yossi Levanoni
  • Publication number: 20100228929
    Abstract: A software transactional memory system is provided that provides privatization safety. The system identifies situations where the completion of a transaction may be expedited because a privatization artifact will not occur. The system determines whether a privatization artifact may occur using a read and write set intersection test, transactional variables, pessimistic locks, or declared privatizing transactions. If a privatization artifact will not occur for a transaction, then the system may allow the transaction to complete prior to one or more earlier transactions.
    Type: Application
    Filed: March 9, 2009
    Publication date: September 9, 2010
    Applicant: Microsoft Corporation
    Inventors: David L. Detlefs, Yosseff Levanoni, Weirong Zhu, Dana Groff, Alexander Dadiomov
  • Publication number: 20100191930
    Abstract: Transactional memory compatibility type attributes are associated with intermediate language code to specify, for example, that intermediate language code must be run within a transaction, or must not be run within a transaction, or may be run within a transaction. Attributes are automatically produced while generating intermediate language code from annotated source code. Default rules also generate attributes. Tools use attributes to statically or dynamically check for incompatibility between intermediate language code and a transactional memory implementation.
    Type: Application
    Filed: January 26, 2009
    Publication date: July 29, 2010
    Applicant: MICROSOFT CORPORATION
    Inventors: Dana Groff, Yosseff Levanoni, Stephen Toub, Michael McKenzie Magruder, Weirong Zhu, Timothy Lawrence Harris, Christopher William Dern, John Joseph Duffy, David Detlefs, Martin Abadi, Sukhdeep Singh Sodhi, Lingli Zhang, Alexander Dadiomov, Vinod Grover
  • Publication number: 20100100885
    Abstract: A processing system includes a transactional memory, first and second resource managers, and a transaction manager for a concurrent program having a thread including an atomic transaction having a side-effecting action. The first resource manager is configured to enlist in the atomic transaction and manage a resource related to the side effecting action. The second resource manager is configured to enlist in the atomic transaction and manage the transaction memory. The transaction manager is coupled to the first and second resource managers and manager is configured to receive a vote from the first and second resource managers as to whether to commit the transaction. The side-effecting action is postponed until after the transaction commits or applied along with a compensating action to the side-effecting action.
    Type: Application
    Filed: October 20, 2008
    Publication date: April 22, 2010
    Applicant: Microsoft Corporation
    Inventors: Dana Groff, Alexander Dadiomov, Yossi Levanoni
  • Publication number: 20100100689
    Abstract: A transactional memory processing system provides for the integration of transactional memory concepts at the compiler-level into a higher-level traditional transaction processing system. Atomic blocks at the compiler-level can be specified as atomic block transactions and include the features of atomicity and isolation. Actions within this atomic block transaction include the enlistment of resource managers from a repository. The repository can now include a pre-programmed memory resource manager to manage the transactional memory. As in traditional transactions, a commit protocol can be used to determine if the actions are valid and can be exposed outside of the transaction. Unlike traditional transactions, however, the transaction is not necessarily doomed if all of the actions are not validated. Rather, memory conflicts can cause a rollback and re-execution of the atomic block transaction, which can be repeated as long as necessary, until the memory resource manger votes to commit.
    Type: Application
    Filed: January 14, 2009
    Publication date: April 22, 2010
    Applicant: MICROSOFT CORPORATION
    Inventors: Alexander Dadiomov, Dana Groff, Yosseff Levanoni, James E. Johnson
  • Publication number: 20090044204
    Abstract: A set of application programming interfaces (“APIs”) is provided that enables an application to perform operations on multiple system resources as a single logical unit of work through a transaction. The application can then commit or roll back the entire group of changes as a single unit in a coordinated manner. The APIs expose functions and methods that take a reference to a transaction context, such as a handle, name, or pointer, as one of their parameters so that the application can manipulate the resource as a transacted operation. The transaction is bound to all created handles so that all operations on the resource using those handles are also transacted. In an illustrative example, the set of APIs are transacted name-based WIN32 APIs that take a transaction handle. The transacted APIs expose transacted operations to the application for durable system resources in the OS kernel, including the NTFS file system (New Technology File System) and registry.
    Type: Application
    Filed: August 8, 2007
    Publication date: February 12, 2009
    Applicant: Microsoft Corporation
    Inventors: Dana Groff, Jonathan Cargille, Surendra Verma, Andrew Herron, Dragos Sambotin, Christian Allred, William R. Tipton, Karthik Thirumalai
  • Publication number: 20080208924
    Abstract: A security model is provided in a transactional logging infrastructure that is arranged as a protected subsystem built on an underlying secure file system. Files in the underlying file system used by virtual log streams are protected from direct user writes, and are written-to only through the protected subsystem that is brokered by a machine-wide principal so that virtual log files sharing the same multiplexed physical log are kept secure from each other. Log file handles and user- and kernel-mode objects are exposed to log clients through interfaces using consistent security semantics for both dedicated and virtual logs. Log clients are agnostic of the underlying secure file system and can only manipulate file system containers—abstract objects that implement the physical log and used to virtualize the file system by normalizing input/output operations—by using the interfaces brokered by the principal in the protected subsystem.
    Type: Application
    Filed: February 28, 2007
    Publication date: August 28, 2008
    Applicant: Microsoft Corporation
    Inventors: Dexter P. Bradshaw, William R. Tipton, Dana Groff, Zoheb Vacheri
  • Publication number: 20080133615
    Abstract: A transactional logging service is provided to user-mode and kernel-mode log clients by utilizing a marshalling area to buffer a set of log records that a log client assembles into a log stream. Disk I/O (input/output) functionality is then separately brokered using a kernel-mode address space for a single dedicated physical log, or virtual logs multiplexed to a single log, which is written to stable storage that contains log records from across all of the log streams. Physical log writes are handled by a shared log flush queue and physical log reads are provided by a file system cache that underlies the service. A multi-level cache hierarchy is utilized when a log client needs to access a log record. A series of caches are queried in order of increasing latency until the targeted log record is located. The target log record is only read from disk in the event that it missed at each cache in the hierarchy.
    Type: Application
    Filed: December 4, 2006
    Publication date: June 5, 2008
    Applicant: Microsoft Corporation
    Inventors: Dexter P. Bradshaw, William R. Tipton, Dana Groff
  • Publication number: 20070239736
    Abstract: Minimizing transaction managers. A method that may be practiced in a commit tree topology including a plurality of transaction managers to manage transactions. The transactions include a set of operations that are all performed if a transaction is completed or all aborted if a transaction is not completed. The transaction managers store transaction result information to allow recovery of a transaction in case of system failure. The method includes acts for minimizing storage overhead by minimizing the number of transaction managers used to coordinate transactions. The method includes identifying a set of transaction managers. A first transaction manager is selected from among the set of transaction managers. A second transaction manager is identified from among the set of transaction managers that is always available when the first transaction manager is available. Messages are redirected from a subordinate associated with the first transaction manager to the second transaction manager.
    Type: Application
    Filed: April 10, 2006
    Publication date: October 11, 2007
    Applicant: Microsoft Corporation
    Inventors: Dana Groff, James Johnson, John Doty, Jonathan Cargille, Kapil Gupta, Michael Clark
  • Publication number: 20070180530
    Abstract: Aspects of the subject matter described herein relate to antivirus protection and transactions. In aspects, a filter detects that a file is participating in a transaction and then may cause the file to be scanned together with any changes that have made to the file during the transaction. After a file is scanned, a cache entry may be updated to indicate that the file is clean. The cache entry may be used subsequently for like-type states. For example, if the file was scanned inside a transaction, the cache entry may be used later in the transaction. If the file was scanned outside a transaction, the cache entry may be used later for requests pertaining to files not in a transaction. Cache entries may be discarded when they are invalid or no longer useful.
    Type: Application
    Filed: March 15, 2006
    Publication date: August 2, 2007
    Applicant: Microsoft Corporation
    Inventors: Surendra Verma, Dana Groff, Jonathan Cargille, Andrew Herron, Christian Allred, Neal Christiansen, Alexey Polyakov