Arrays Patents (Class 707/801)
  • Patent number: 11030250
    Abstract: Methods, computer program products, and systems are presented. The methods include, for instance: generating domain language detection models respective to a plurality of domains. A query is mapped to a domain language detection model and intent of the query is determined by use of classification labels of the domain language detection model. Based on the classification labels that may be identified as the intent of the query, alternative queries are formed to be meaningful valid and are produced to a user.
    Type: Grant
    Filed: November 12, 2019
    Date of Patent: June 8, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Lisa Seacat DeLuca, Stefan A. Gert van der stockt
  • Patent number: 10055429
    Abstract: Generation of a schema of a NoSQL type database, where a set of entry(ies) of a NoSQL type database can be determined, and the record schema is a treelike relationship between key hierarchies with a key as a node in the entry, wherein the key corresponds to an attribute name. For at least one record schema, a node in which there is an attribute name variation is determined based on a similarity of sub-nodes in the treelike relationship, and the record schema is updated according to the determined result. The schema of the NoSQL type database is generated based on the updated record schema.
    Type: Grant
    Filed: April 28, 2015
    Date of Patent: August 21, 2018
    Assignee: International Business Machines Corporation
    Inventors: Limei Jiao, Chen Wang, Lanjun Wang, Shuo Zhang
  • Patent number: 9983929
    Abstract: A method for data storage includes storing data in a memory that includes one or more memory units, each memory unit including memory blocks. The stored data is compacted by copying at least a portion of the data from a first memory block to a second memory block, and subsequently erasing the first memory block. Upon detecting a failure in the second memory block after copying the portion of the data and before erasure of the first memory block, the portion of the data is recovered by reading the portion from the first memory block.
    Type: Grant
    Filed: June 23, 2016
    Date of Patent: May 29, 2018
    Assignee: Apple Inc.
    Inventors: Ofir Shalvi, Naftali Sommer, Uri Perlmutter, Julian Vlaiko, Moshe Neerman
  • Patent number: 9529932
    Abstract: A method includes labeling XML document and determining the relationship between the nodes in the document by inputting data from a XML tree structure, visiting the nodes of the XML document by breath-first traversal in level order, assigning a label to each node in the form of <Level, Number>, where the level is the level where the node exists and the number is a unique identifying number generated by using a masking technique, creating a mask for each level, and storing the label and mask created for each level in the memory. The method further includes determining the relationship between nodes by using logical operators.
    Type: Grant
    Filed: January 24, 2014
    Date of Patent: December 27, 2016
    Assignee: King Fahd University of Petroleum and Minerals
    Inventors: Taher Ahmed Ghaleb, Salahadin Adam Mohammed
  • Patent number: 9454542
    Abstract: An extensible file system format for portable storage media is provided. The extensible file system format includes the specification of primary and secondary directory entry types that may be custom defined. The primary and secondary directory entry types can be further classified as critical and benign directory entries.
    Type: Grant
    Filed: March 20, 2008
    Date of Patent: September 27, 2016
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Ravisankar V. Pudipeddi, Vishal V. Ghotge
  • Patent number: 9426166
    Abstract: A method and corresponding apparatus for run time processing use a Deterministic Finite Automata (DFA) and Non-Deterministic Finite Automata (NFA) to find the existence of a pattern in a payload. A subpattern may be selected from each pattern in a set of one or more regular expression patterns based on at least one heuristic. The DFA may be generated from selected subpatterns from all patterns in the set, and at least one NFA may be generated for at least one pattern in the set, optimizing run time performance of the run time processing.
    Type: Grant
    Filed: August 30, 2013
    Date of Patent: August 23, 2016
    Assignee: Cavium, Inc.
    Inventors: Satyanarayana Lakshmipathi Billa, Rajan Goyal
  • Patent number: 8965934
    Abstract: A method and apparatus for facilitating answering a query on a database. Example embodiments include: accessing a database tree having a plurality of nodes; receiving a set of input variable values, a non-empty set of output variables, and information indicative of a node in the database tree; determining a traversal cost based on the node and the set of input variable values; determining a lower bound based on the node and the set of input variable values, wherein the lower bound corresponds to an upper-bound probability estimate based on one or more of the plurality of nodes and the set of input variable values; pruning one or more of the plurality of nodes based on the traversal cost, the lower bound, and a pruning bound; and returning a result including a non-empty set of output variable values based on the set of input variable values, the node, the traversal cost, and the lower bound.
    Type: Grant
    Filed: November 16, 2011
    Date of Patent: February 24, 2015
    Assignee: Quova, Inc.
    Inventor: Armand Erik Prieditis
  • Patent number: 8935293
    Abstract: Techniques for reducing the memory used for processing events received in a data stream are provided. This may be achieved by reducing the memory required for storing tuples. A method for processing a data stream includes receiving a tuple and determining a tuple specification that defines a layout of the tuple. The layout identifies one or more data types that are included in the tuple. A tuple class corresponding to the tuple specification may be determined. A tuple object based on the tuple class is instantiated, and during runtime of the processing system. The tuple object is stored in a memory.
    Type: Grant
    Filed: March 2, 2009
    Date of Patent: January 13, 2015
    Assignee: Oracle International Corporation
    Inventors: Hoyong Park, Namit Jain, Anand Srinivasan, Shailendra Mishra
  • Patent number: 8924384
    Abstract: Techniques are described in which at least one column is added to a table in a column-based database that has a plurality of columns and table fields. A shadow-in-place upgrade of the column-based database can be performed that adds at least one new column to the database. Thereafter, access to the column-based database can be seamlessly enabled before, during, and after the upgrade through a plurality of views. The views define a subset of the fields in the database that are visible. Related apparatus, systems, techniques and articles are also described.
    Type: Grant
    Filed: August 4, 2010
    Date of Patent: December 30, 2014
    Assignee: SAP AG
    Inventors: Volker Driesen, Peter Eberlein
  • Patent number: 8914417
    Abstract: An apparatus, system, and method are disclosed for maintaining a context stack. A monitor module monitors a stack size after each monitor interval for a stack of a plurality of contexts. Each context defines communications between a process and a data set and comprises a pathway for communicating with the data set and a process identifier. A stack module deallocates a context that satisfies a stack policy from the stack if the stack size is within a buffer threshold of a maximum threshold.
    Type: Grant
    Filed: January 7, 2009
    Date of Patent: December 16, 2014
    Assignee: International Business Machines Corporation
    Inventors: Lourie A. Bryan, Gregory T. Kishi, Kerri R. Shotwell, Joseph M. Swingler
  • Patent number: 8903825
    Abstract: A method of classifying a plurality of documents. The method includes steps of providing a first set of classification terms and a second set of classification terms, the second set of classification terms being different from the first set of classification terms; generating a first frequency array of a number of occurrences of each term from the first set of classification terms in each document; generating a second frequency array of a number of occurrences of each term from the second set of classification terms in each document; generating a first similarity matrix from the first frequency array; generating a second similarity matrix from the second frequency array; determining an entrywise combination of the first similarity matrix and the second similarity matrix; and clustering the plurality of documents based on the result of the entrywise combination.
    Type: Grant
    Filed: May 23, 2012
    Date of Patent: December 2, 2014
    Assignee: NamesforLife LLC
    Inventors: Charles T. Parker, George M. Garrity
  • Patent number: 8893155
    Abstract: Embodiments are directed to establishing registration objects for distributed processes, to managing memory on worker processes of a distributed software application and to using object serialization to communicate references to shim objects. In one scenario, a computer system accesses distributed process instances in a distributed runtime and creates a registration object for each of the process instances in the distributed runtime. The registration object includes a key value pair, where the key includes a unique identifier (ID) that identifies a distributed array instance associated with the distributed process, and the value includes a reference to a local portion of the distributed array instance. The computer system then maintains a mapping between the unique ID and the distributed array instance using the registration object. As such, the key value refers to the local portion of the same distributed array instance on each distributed process of the distributed runtime.
    Type: Grant
    Filed: March 14, 2013
    Date of Patent: November 18, 2014
    Assignee: Microsoft Corporation
    Inventors: Richard A. Warren, Sudarshan Raghunathan, Adam P. Jenkins
  • Patent number: 8868611
    Abstract: The present application is directed to a data management system. The data management system is implemented within a computer system that includes one or more processors, one or more electronic memories, and a memory-mapped file facility that electronically stores data. The data management system, implemented by data management system control routines that are executed by the one or more processors, retrieves a particular projection of a multi-level, multi-dimension data set stored within the ONP-tree data structure that contains the multi-level, multi-dimension data set.
    Type: Grant
    Filed: July 28, 2011
    Date of Patent: October 21, 2014
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Qiming Chen, Meichun Hsu
  • Patent number: 8849820
    Abstract: Systems and methods are disclosed for providing devices capable of the reception and playback of one or more crafted media channels transmitted over an intermittent connection. An exemplary method of personalized rendering of media content includes receiving media files and file metadata defining attributes of the media files over a data link at a receiver. The method further includes executing, using a processor of the receiver, instructions stored in a memory of the receiver. The instructions cause the processor to store certain ones of the media files characterized by file metadata consistent with one or more channel profiles in the memory, remove certain of the ones of the media files stored within the memory, and sequence the ones of the media files stored within the memory for rendering based upon one or more of the channel profiles.
    Type: Grant
    Filed: February 15, 2013
    Date of Patent: September 30, 2014
    Assignee: Slacker, Inc.
    Inventors: Bradley D. Kindig, Celite Milbrandt
  • Patent number: 8849866
    Abstract: The present invention provides a method and computer program product for creating an ordered data structure for storing a plurality of data elements. The data elements to be stored are first arranged in an order. A plurality of keys is then generated for the ordered data elements such that the keys may be arranged in a sequence. Thereafter, one or more keys from the plurality of keys are associated with the ordered data elements such that the values of the keys maintain the requisite order among the ordered data elements. Finally, an ordered data structure is created for storing the ordered data elements along with the associated keys.
    Type: Grant
    Filed: February 22, 2010
    Date of Patent: September 30, 2014
    Assignee: Infosys Limited
    Inventor: Trichur Easwaran Hariharan
  • Patent number: 8825674
    Abstract: Key conditioning involves the construction of a byte orderable array from values for a possibly multi-field key concatenated key, for comparison by a sort routine. Byte-orderable sort keys are conditioned prior to execution of a sort routine, to facilitate an accurate and/or efficient sort procedure. Key conditioning may be applied to values in one or more columns of a database table, where the column(s) are used as keys for sorting rows of the table. Six factors are considered in encoding the byte array, such as whether nulls compare high or low; whether a field is fixed width or variable width; whether a field is guaranteed to be not null; whether a field is ordered ascending or descending; whether a field is the last field of a multi-field sort key or the only field of a sort key; and whether a field is likely to contain a significant number of zero values.
    Type: Grant
    Filed: July 20, 2009
    Date of Patent: September 2, 2014
    Assignee: Oracle International Corporation
    Inventors: Mark D. Callaghan, Dmitry M. Potapov
  • Patent number: 8825722
    Abstract: Systems and methods are disclosed in which a self-describing file is generated and utilized to provide applications with the ability to properly preserve unknown file content. A self-describing file may contain, or be associated with, an extension section that provides information that an application can use to properly calculate unknown file content. The extension section may include functions of formulas that the application can use to calculate values for data that the application would not otherwise support. This allows for the content of the self-describing file to be modified by an application that does not support all of the capabilities of the file while maintaining the integrity of the file and user experience when the file is subsequently accessed by a full featured application.
    Type: Grant
    Filed: January 13, 2012
    Date of Patent: September 2, 2014
    Assignee: Microsoft Corporation
    Inventors: Daniel Clay, Michael Woolf, Matthew Dorbin, Stephanie Lorraine Horn
  • Publication number: 20140214900
    Abstract: Providing database support. A first group of data are received, the first group of data being expressed in a first format, and a second group of data are received, the second group of data being expressed in a second format, the second format being different from the first format. The first and second groups of data are merged, and are represented in at least one common column. Such representing includes: maintaining the first and second formats; and providing a tuple map which provides reference to the first and second formats.
    Type: Application
    Filed: January 31, 2013
    Publication date: July 31, 2014
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Ronald J. Barber, Guy M. Lohman, Vijayshankar Raman, Richard S. Sidle
  • Patent number: 8793284
    Abstract: An electronic device may include a memory, and a processor coupled to the memory for storing and accessing data in the memory. The processor may arrange the data in a stack data container including values extending from a stack top to a stack bottom, operate the stack data container in first and second modes of operation, and while in the first mode of operation, push and pop a respective value from the stack top of the stack data container. The processor may also while in the second mode, reverse an orientation of the stack data container and the values therein, and push and pop a respective value from the stack bottom of the reversed stack data container.
    Type: Grant
    Filed: May 24, 2012
    Date of Patent: July 29, 2014
    Inventor: Laurie Dean Perrin
  • Patent number: 8788534
    Abstract: A system, method and data structure for processing basic client application data types to add thereto extension types and priority levels adapted for use by each of a plurality of set top box classes.
    Type: Grant
    Filed: February 2, 2011
    Date of Patent: July 22, 2014
    Assignee: TVWorks, LLC
    Inventors: James Hindle, Peter G. N. Scheyen, Mark A. Vickers
  • Publication number: 20140201217
    Abstract: The present invention discloses methods, systems, and tools for unified semantic scoring of compositions of ontological subjects. The method breaks a composition into a plurality of partitions as well as its constituent ontological subjects of different orders and builds a participation matrix indicating the participation of ontological subjects of the composition in other ontological subjects, i.e. the partitions, of the composition. The method, systematically, enables the calculation of the semantic scores/ranks, value significances of ontological subjects of different orders and/or calculating and obtaining adjacency data of their visual graphical representations, and/or the association strengths between the ontological subjects of different orders of the composition. Various systems for implementing the method and numerous applications and services are disclosed.
    Type: Application
    Filed: January 9, 2014
    Publication date: July 17, 2014
    Inventor: Hamid Hatami-Hanza
  • Patent number: 8782092
    Abstract: A system and method are described for progressively efficiently filtering and gathering netflow data. Flow records are analyzed to find out which keys (addresses, conversations, protocols etc) meet defined filter parameters. The netflow data is processed and a data structure of fixed size is continually maintained in order to facilitate efficient retrieval of the gathered netflow data.
    Type: Grant
    Filed: August 30, 2011
    Date of Patent: July 15, 2014
    Assignee: Fluke Corporation
    Inventor: Peter Reilly
  • Publication number: 20140188942
    Abstract: A method of managing data includes generating a model file containing descriptions of the data, wherein the descriptions of the data in the model file are formatted as a collection of dictionaries, wherein the descriptions of the data are divided into multiple groups that are associated with multiple hierarchical pages, and wherein the multiple groups associated with the multiple hierarchical pages are listed in the model file in a flat structure, and generating a controller file that, when executed by a processor, causes the processor to interpret the model file and present the data in the multiple hierarchical pages to a user, wherein the controller file refers to one of the multiple groups in the model file, wherein the controller file is re-used to interpret the multiple groups in the descriptions of the data and present the data in the multiple hierarchical pages.
    Type: Application
    Filed: December 31, 2012
    Publication date: July 3, 2014
    Applicant: AppSense Limited
    Inventor: Paul Keith BRANTON
  • Patent number: 8738578
    Abstract: A system is configured to: determine whether criteria are met to grow a structure; calculate, when the criteria are met, a new size of the structure based on at least one or more of: a predefined curve, a total number of elements to be stored in the structure, an amount of available memory, or architecture information corresponding to the processor; allocate an area in memory to store the structure based on the new size; and store the elements of the structure in the area, where the area comprises space to add additional elements to the structure. The new size of the structure may be greater than the total number of elements.
    Type: Grant
    Filed: December 27, 2010
    Date of Patent: May 27, 2014
    Assignee: The Mathworks, Inc.
    Inventor: William Richard Nell
  • Publication number: 20140059085
    Abstract: Certain example embodiments relate to a method of storing data in a tabular data structure having columns and rows in a column-oriented storage system. At least one of the columns is divided into a plurality of segments. Each segment has an associated cell size that indicates the maximum size of the data items in the respective segment. When storing a data item into one of the segments, it is determined whether the size of the data item exceeds the cell size of the segment; and if the size of the data item exceeds the cell size of the segment, the cell size of the segment is adapted to accommodate the size of the data item. The adapting of the cell size of the segment to accommodate the size of the data item is performed independent of the cell sizes of the other of the plurality of segments.
    Type: Application
    Filed: October 10, 2012
    Publication date: February 27, 2014
    Applicant: SOFTWARE AG
    Inventor: Daniel U. SCHRECK
  • Patent number: 8631020
    Abstract: Key conditioning involves the construction of a byte orderable array from values for a possibly multi-field key concatenated key, for comparison by a sort routine. Byte-orderable sort keys are conditioned prior to execution of a sort routine, to facilitate an accurate and/or efficient sort procedure. Key conditioning may be applied to values in one or more columns of a database table, where the column(s) are used as keys for sorting rows of the table. Six factors are considered in encoding the byte array, such as whether nulls compare high or low; whether a field is fixed width or variable width; whether a field is guaranteed to be not null; whether a field is ordered ascending or descending; whether a field is the last field of a multi-field sort key or the only field of a sort key; and whether a field is likely to contain a significant number of zero values.
    Type: Grant
    Filed: July 20, 2009
    Date of Patent: January 14, 2014
    Assignee: Oracle International Corporation
    Inventors: Mark D. Callaghan, Dmitry M. Potapov
  • Publication number: 20130325904
    Abstract: Representation of an array in dynamically-typed program code at runtime is provided. Program code is accessed at runtime. An instruction for adding, updating or deleting one or more elements for an array is detected within the code. The array is associated with a first kind of element comprising a first representation and packing format. A second kind of element is determined based on at least one of the instruction or the one or more elements, the second kind of element comprising at least one of a second representation or packing format. A determination is made that the first and second kind of elements are not consistent, based on an inconsistency between the first and second representation formats or packing formats. The array is converted so that the first and second kind of elements are consistent. One or more array elements are added, updated or deleted based on the instruction.
    Type: Application
    Filed: June 1, 2012
    Publication date: December 5, 2013
    Applicant: Google Inc.
    Inventors: Daniel Kenneth Clifford, Jakob Martin Rudiger Kummerow, Yang Guo
  • Patent number: 8566709
    Abstract: A method and apparatus for representing and controlling documents including rich text for Web based applications and browsers is provided so that editing of rich text can be facilitated within the browsers. The rich text is represented in a memory structure so that various formats may be flexible maintained. Text, images, tables, links and the like are represented in the memory structure, which may be maintained in databases for eventual editing. A controller class and subsidiary classes represent the rich text and provide methods to convert html to the memory structure and back, representing the rich text in a relational database, retrieving the rich text from a relational database, and presenting the rich text for editing. A spell checking facility for the rich text is included.
    Type: Grant
    Filed: November 5, 2010
    Date of Patent: October 22, 2013
    Assignee: International Business Machines Corporation
    Inventor: James R. Wason
  • Patent number: 8543574
    Abstract: An efficient manner of performing an M-out-of-N partial matching search of indexed documents (e.g., web pages) is provided herein. More particularly, indexed words are arranged into a global location space (GLS), providing for respective occurrences of words in indexed documents being searched to have continuous locations on a one-dimensional GLS. Documents within the GLS are separated by end of document word marking boundaries between consecutive documents. The query words are then separated into an active set, comprising the left-most query words, and a non-active set. A partial matching operator transverses the GLS, applying active geometric constraints, in a sequential manner, to words in the active set. This causes shifting of the active set along the GLS to comprise M left-most query words. If a document satisfies constraints associated with M words in an active set, the document comprises at least M-out-of-N words.
    Type: Grant
    Filed: June 5, 2009
    Date of Patent: September 24, 2013
    Assignee: Microsoft Corporation
    Inventors: Qifa Ke, Michael Isard
  • Patent number: 8495094
    Abstract: Systems and methods for scanning signatures in a string field. In one implementation, the invention provides a method for signature scanning. The method includes processing one or more signatures into one or more formats that include one or more fingerprints and one or more follow-on search data structures for each fixed-size signature or signature substring such that the number of fingerprints for each fixed-size signature or signature substring is equal to a step size for a signature scanning operation and the particular fixed-size signature or signature substring is identifiable at any location within any string fields to be scanned, receiving a particular string field, identifying any signatures included in the particular string field including scanning for the fingerprints for each scan step size and searching for the follow-on search data structures at the locations where one or more fingerprints are found, and outputting any identified signatures.
    Type: Grant
    Filed: October 12, 2010
    Date of Patent: July 23, 2013
    Inventor: Qiang Wang
  • Patent number: 8489620
    Abstract: An analysis preprocessing system is provided which is capable of, when large amounts of data are received from a large number of data generation sources, rapidly passing those data to means for analyzing the data in order of time of generation thereof. Data acquisition means 71 acquires a data group generated by a plurality of data generation sources. Data clipping means 72 clips each data from the data group. Rearrangement control means 73 retains each clipped data therein, selects data generated prior to the corresponding data when data from a delay maximum data generation source is detected, and rearranges the selected data in order of time of generation thereof. A data storage buffer 74 stores the data rearranged in order of time of generation thereof. Analysis data determination means determines an analysis data group which is a set of data used for analysis, from the data stored in the data storage buffer 74.
    Type: Grant
    Filed: February 19, 2010
    Date of Patent: July 16, 2013
    Assignee: NEC Corporation
    Inventors: Kouji Kida, Kenichiro Fujiyama, Teruyuki Imai, Nobutatsu Nakamura
  • Patent number: 8484251
    Abstract: A computer readable storage medium for performing a transform of a multidimensional matrix in a distributed memory network by: storing a multidimensional matrix of side N in a distributed memory network with a plurality of nodes and distributing work associated with a calculation of a transform of the matrix among N2 of the plurality of nodes. The medium further receives results of the calculation of the transform of the matrix by the nodes.
    Type: Grant
    Filed: June 21, 2010
    Date of Patent: July 9, 2013
    Assignee: International Business Machines Corporation
    Inventors: Maria Eleftheriou, Blake G. Fitch, Robert S. Germain, Aleksandr Rayshubskiy, Thomas James Christopher Ward
  • Patent number: 8468170
    Abstract: Users are enabled to quickly and easily associate records representing entities such as themselves, other users, contacts, accounts, teams/groups, and similar ones employing a record of the association and assign each entity a role or other attributes as a part of this association. Relationship records and attributes preserving entity association information allow teamwork, communication, and collaboration for effective management of business processes. The records and attributes also enable visualization and facilitate deeper understanding of the relationships between people, data, and business processes.
    Type: Grant
    Filed: December 15, 2008
    Date of Patent: June 18, 2013
    Assignee: Microsoft
    Inventors: Andrew Bybee, Derik Stenerson, Denis Seniuc, Kalmadi Santhosh Rao, Shashi Ranjan
  • Patent number: 8458191
    Abstract: A method (and structure) of storing schema-less data of a dataset in a relational database, includes constructing a hash table for the schema-less data, using a processor on a computer. Data in the dataset is stored in a tuple format including a subject along with at least one other entity associated to the subject. Each row of the hashtable will be dedicated to a subject of the dataset, and at least one of the at least one other entity associated with the subject in the row is to be stored in a pair-wise manner in that row of the hashtable. In an exemplary embodiment, RDF data that uses triples (subject, predicate, object) is stored with the predicate/object stored in the pair-wise manner in its associated subject row.
    Type: Grant
    Filed: March 15, 2010
    Date of Patent: June 4, 2013
    Assignee: International Business Machines Corporation
    Inventors: Bishwaranjan Bhattacharjee, Kavitha Srinivas, Octavian Udrea
  • Patent number: 8443007
    Abstract: Systems and methods are disclosed for providing devices capable of the reception and playback of one or more crafted media channels transmitted over an intermittent connection. The one or more channels may be customized by the end user to bias the programming towards individual tastes or moods. The channels may be delivered over an intermittent, unidirectional link, for example a Satellite Radio receiver in a home or car. Content may also be delivered over an intermittent, bidirectional link, for example to a portable media player via a wireless 802.11 or other networked connection.
    Type: Grant
    Filed: May 12, 2011
    Date of Patent: May 14, 2013
    Assignee: Slacker, Inc.
    Inventors: Bradley D. Kindig, Celite Milbrandt
  • Publication number: 20130091176
    Abstract: An article of manufacture having a plurality of sites in domains of regular patterns. Neighboring domains are oriented at different angles to improve the identification of the sites.
    Type: Application
    Filed: October 6, 2011
    Publication date: April 11, 2013
    Applicant: IIIumina, Inc.
    Inventors: Jason Harris, Stephen Tanner
  • Patent number: 8417735
    Abstract: One embodiment of the present invention sets forth a technique for performing a parallel scan operation with high computational efficiency in a single-instruction multiple-data (SIMD) environment. Each participating thread initially writes an extended region of a data array to initialize the region with an identity value. For example, a value of zero is used as the identity value for addition. The initialized region of the data array includes an initialized entry for every possible out of bounds index that may be computed in the normal course of the parallel scan operation. During the parallel scan operation each thread computes data array indices according to any technically appropriate technique. When a participating thread computes an index that would conventionally be out of bounds, the thread is able to retrieve an identity value from the initialized region of the data array rather than perform a bounds check that returns the identity value.
    Type: Grant
    Filed: December 12, 2007
    Date of Patent: April 9, 2013
    Assignee: Nvidia Corporation
    Inventor: John A. Stratton
  • Patent number: 8417733
    Abstract: Embodiments of the present invention provide techniques, including systems, methods, and computer readable medium, for dynamic atomic bitsets. A dynamic atomic bitset is a data structure that provides a bitset that can grow or shrink in size as required. The dynamic atomic bitset is non-blocking, wait-free, and thread-safe.
    Type: Grant
    Filed: March 4, 2010
    Date of Patent: April 9, 2013
    Assignee: Oracle International Corporation
    Inventor: Nathan Reynolds
  • Publication number: 20130073587
    Abstract: A system, method and data structure for processing a sequential set of data. A set of data is processed such the repetitive sequences of data are represented by a value and an offset of the last array element in the sequence. The resulting compressed array facilitates binary searching of data element values, modification of data element values, and/or addition/deletion of data array elements without requiring a regeneration of the array.
    Type: Application
    Filed: November 12, 2012
    Publication date: March 21, 2013
    Applicant: PIVOTLINK CORP.
    Inventor: Pivotlink Corp.
  • Patent number: 8386527
    Abstract: A method and a system efficiently and effectively share array entries among multiple threads of execution in a multiprocessor computer system. The invention comprises a method and an apparatus for array creation, a method and an apparatus for array entry data retrieval, a method and an apparatus for array entry data release, a method and an apparatus for array entry data modification, a method and an apparatus for array entry data modification release, a method and an apparatus for multiple array entry atomic release-and-renew, a method and an apparatus for array destruction, a method and an apparatus for specification of array entry discard strategy, a method and an apparatus for specification of array entry modification update strategy, and finally a method and an apparatus for specification of user-provided array entry data construction method.
    Type: Grant
    Filed: November 30, 2010
    Date of Patent: February 26, 2013
    Assignee: Pocket Soft, Inc.
    Inventors: Kerry N. Jones, William F. Wise, Jr.
  • Patent number: 8387057
    Abstract: Embodiments of the invention improve parallel performance in multi-threaded applications by serializing concurrent priority queue operations to improve throughput. An embodiment uses a synchronization protocol and aggregation technique that enables a single thread to handle multiple operations in a cache-friendly fashion while threads awaiting the completion of those operations spin-wait on a local stack variable, i.e., the thread continues to poll the stack variable until it has been set or cleared appropriately, rather than rely on an interrupt notification. A technique for an enqueue/dequeue (push/pop) optimization uses re-ordering of aggregated operations to enable the execution of two operations for the price of one in some cases. Other embodiments are described and claimed.
    Type: Grant
    Filed: December 16, 2010
    Date of Patent: February 26, 2013
    Assignee: Intel Corporation
    Inventor: Terry Wilmarth
  • Patent number: 8380923
    Abstract: A queue descriptor including a head pointer pointing to the first element in a queue and a tail pointer pointing to the last element in the queue is stored in memory. In response to a command to perform an enqueue or dequeue operation with respect to the queue, fetching from the memory to a cache only one of either the head pointer or tail pointer and returning to the memory from the cache portions of the queue descriptor modified by the operation.
    Type: Grant
    Filed: November 8, 2010
    Date of Patent: February 19, 2013
    Assignee: Intel Corporation
    Inventors: Gilbert Wolrich, Mark B. Rosenbluth, Debra Bernstein
  • Patent number: 8375067
    Abstract: A job searching and matching system and method is disclosed that gathers job seeker information in the form of job seeker parameters from one or more job seekers, gathers job information in the form of job parameters from prospective employers and/or recruiters, correlates the information with past job seeker behavior, parameters and behavior from other job seekers, and job parameters and, in response to a job seeker's query, provides matching job results based on common parameters between the job seeker and jobs along with suggested alternative jobs based on the co-relationships and based on ratings and preferences provided by the job seeker and provides negative filtration of undesirable jobs based on job seeker input and in response to queries from the system in order to efficiently and accurately accommodate job seeker perception.
    Type: Grant
    Filed: May 25, 2006
    Date of Patent: February 12, 2013
    Assignee: Monster Worldwide, Inc.
    Inventors: Adam Hyder, Changsheng Chen
  • Patent number: 8365195
    Abstract: Embodiments relate to generating sets of model objects having data messaging pipes. A modeling client can host modeling logic and an application programming interface (API) to create, access, manipulate, and import/export modeling objects used in modeling applications, such as engineering, medical, financial, and other modeling platforms. The source data accepted into the modeling client can include consumer or business-level applications, whose spreadsheet, database or other content can be extracted and encapsulated in object-oriented format, such as extensible markup language (XML) format. A set of modeling objects can be connected via data messaging pipes on a selective basis, so that individual objects can transmit or receive data outputs generated by other objects. The model objects can share, exchange, or combine computational outputs, internal data, and other information from other model object(s). Multiple pipes can be established at various levels or dimensions between objects or groups of objects.
    Type: Grant
    Filed: August 31, 2009
    Date of Patent: January 29, 2013
    Assignee: Red Hat, Inc.
    Inventor: Eric Williamson
  • Patent number: 8364675
    Abstract: Methods and apparatus, including computer program products, for searching for an n:th array element in an unsorted array in a computer memory. The n:th array element is selected as an initial pivot element. A smaller subset of array elements, including the pivot element, is iteratively selected until the smaller subset includes a predetermined number of array elements. In each iteration, an array element corresponding to the n:th array element in the smaller subset is searched for. Array elements are iteratively added onto the subset of array elements, until the number of array elements is equal to the number of array elements in the initial unsorted array. In each iteration, the larger set of array elements is partitioned based on a pivot element located at a position corresponding to the n:th position in a smaller subset of array elements. The n:th array element in the final array is finally selected.
    Type: Grant
    Filed: June 30, 2010
    Date of Patent: January 29, 2013
    Assignee: Google Inc
    Inventor: Alexey Vorobyov
  • Patent number: 8364676
    Abstract: A system for extending a Time Intelligence language to provide support for period-to-date functions and for generating member sets in response to data queries is provided. The system may apply member aggregation functions and queries across a plurality of heterogeneous data sources. Each data source is aligned to a reference dimension and is said to organize data according to at least one level of granularity. In some embodiments, a member aggregation function specifies a period (e.g., year, quarter, month) and retrieves data from a data source starting with the current specified period and ending with the most recently completed period equal to the granularity of the data source. The system may allow a user to further customize a member aggregation function by specifying a granularity, a period offset, or a granularity end offset. Additionally, the system may generate a caption to display in association with the retrieved data.
    Type: Grant
    Filed: January 23, 2012
    Date of Patent: January 29, 2013
    Assignee: Microsoft Corporation
    Inventors: Steve Handy, Catalin Tomai, Chen-I Lim
  • Patent number: 8359334
    Abstract: Integrating a file system with a RAID array that exports precise information about the arrangement of data blocks in the RAID subsystem. The present invention uses separate current-write location (CWL) pointers for each disk in the disk array where the pointers simply advance through the disks as writes occur. The present invention writes on the disk with the lowest CWL pointer. A new disk is chosen only when the algorithm starts allocating space for a new file, or when it has allocated N blocks on the same disk for a single file. A sufficient number of blocks are defined as all the buffers in a chunk of N sequential buffers in a file. The result is that CWL pointers are never more than N blocks apart on different disks, and large files have N consecutive blocks on the same disk.
    Type: Grant
    Filed: October 1, 2010
    Date of Patent: January 22, 2013
    Assignee: Network Appliance, Inc.
    Inventors: David Hitz, Michael Malcolm, James Lau, Byron Rakitzis
  • Patent number: 8326886
    Abstract: A method of storing per-thread, per-instance data, includes identifying a unique index value corresponding to a first instance, identifying type parameters based on the identified index value, and instantiating a generic holder object based on the identified type parameters. The generic holder object includes a thread local field configured to store per-thread data that is local to the first instance.
    Type: Grant
    Filed: January 21, 2010
    Date of Patent: December 4, 2012
    Assignee: Microsoft Corporation
    Inventors: Stephen H. Toub, Emad Omara, John Duffy
  • Patent number: 8326869
    Abstract: The hierarchical relationships between objects in different levels of an object structure (such as a contract) are stored as elements in two-dimensional matrix representations. In general, the matrix representations facilitate queries, clustering of like objects and contracts, and comparisons that identify common objects and contracts.
    Type: Grant
    Filed: September 23, 2010
    Date of Patent: December 4, 2012
    Assignee: Accenture Global Services Limited
    Inventors: Surya P Kolluri, Zhu-Song Mei, Dmitriy Feferman, Kevin P Lee, Michael Irish, Heather E Nelson, David Kil
  • Patent number: 8321473
    Abstract: An Object Customization and Management (OCM) system is configured to identify an object for creating a website based on a business objective. The OCM system includes a customizing module configured to determine qualitative attribute categories for a plurality of objects operable to be used in websites. The module assigns the plurality of objects to the qualitative attribute categories. The OCM system also includes a data management module configured to receive a request for one of the plurality of objects to be used to achieve the business objective. This module also matches the business objective with one of the qualitative attribute categories, and selects an object in the matched qualitative attribute category for the request.
    Type: Grant
    Filed: August 10, 2010
    Date of Patent: November 27, 2012
    Assignee: Accenture Global Services Limited
    Inventors: Matthew Symons, Anatoly Roytman