US Pat. No. 10,713,306

CONTENT PATTERN BASED AUTOMATIC DOCUMENT CLASSIFICATION

Microsoft Technology Lice...

1. A computer-implemented method for content pattern based document classification in a file management system having a network storage containing multiple documents accessible to multiple members via a computer network, the method comprising:receiving, from the network storage, data representing a first document and a second document, both the first and second documents containing words in sequences;
in response to receiving the data representing the first and second documents,
computing a longest common subsequence of words of the first and second documents, the longest common subsequence having a number of words shared by the first and second documents; and
upon determining that the number of words of the computed longest common subsequence is above a threshold,
indicating that the first document and the second document belong to a document class having the computed longest common subsequence as a content pattern; and
automatically classifying, using the content pattern having the computed longest common subsequence between the first and second documents, additional documents in the network storage as belonging to the same document class when a longest common sequence between the individual additional documents relative to the content pattern is above the threshold; and
modifying metadata of the classified additional documents in the network storage of the file management system to apply a class label corresponding to the document class.

US Pat. No. 10,713,305

METHOD AND SYSTEM FOR DOCUMENT SEARCH IN STRUCTURED DOCUMENT REPOSITORIES

EMC IP Holding Company LL...

1. A method for document search in a structured document repository, comprising:obtaining, from a client, a request, wherein the request comprises:
a document search query that specifies document content; and
a location constraint;
selecting, in a document search index associated with the structured document repository, a first index entry;
making a first determination that the document content matches a first index term of the first index entry; and
making a second determination, based on the first determination, that a first document location of the first index entry does not satisfy the location constraint;
selecting, based on the second determination, a second index entry in the document search index;
making a third determination that the document content matches a second index term of the second index entry;
making a fourth determination, based on the third determination, that a second document location of the second index entry satisfies the location constraint; and
providing, based on the fourth determination, information associated with the second index entry to the client.

US Pat. No. 10,713,304

ENTITY ARRANGEMENT BY SHAPE INPUT

International Business Ma...

1. A method, the method comprising:receiving, by the one or more processors, input from a user, wherein the user defines a portion of text data in a document associated with a shape;
responsive to receiving input from a user that defines a shape, generating, by one or more processors, a visual representation of the shape within a graphical user interface, wherein (a) a border of the shape defines an organizational structure for a given plurality of target entities that are placeable within the shape and (b) wherein the visual representation is associated with (i) a type of hierarchy, (ii) a data repository and (iii) a set of organized data;
determining, by the one or more processors, that the set of organized data (i) is associated with a computing device, (ii) indicates a document that includes a plurality of entities, and (iii) indicates a text content that includes the plurality of target entities;
determining, by the one or more processors, that a pattern of input in the visual representation matches a pattern for a given organizational structure stored in the data repository; and
generating, by the one or more processors, a modified organizational structure by modifying the given organizational structure stored in the data repository, wherein the modifying includes populating the visual representation with the plurality of target entities based, at least, in part on the text content.

US Pat. No. 10,713,303

DUAL INTERACTIVE VISUALIZATION SYSTEM FOR SENSITIVITY ANALYSIS TO RISK PREFERENCES FOR DECISION SUPPORT

International Business Ma...

1. A computer-implemented method for providing a risk preference visualization over a set of alternatives and over which an individual has a preference ordering, the method comprising:a) accessing at least one utility function that ranks the set of alternatives according to their utility to an individual;
b) receiving a selection of at least one probability distribution function from a database of stored probability distribution functions, in which each probability distribution function is a different family of probability distribution functions to define a particular probability distribution;
c) computing a certain equivalent based upon the utility function and the at least one probability distribution function, wherein the certain equivalent is defined as a risk-free amount of outcome rather than taking a chance on a higher risky amount;
d) graphically superimposing a plot of the certain equivalent that has been computed along with a plot of the at least one probability distribution function to create a simultaneous dual visualization thereof;
e) presenting the simultaneous dual visualization on a display device;
f) receiving another selection to at least one of:
one or more parameters of the probability distribution function,
accessing another at least one probability distribution function from the database, and
an over-ride the certain equivalent computed in response to receiving a selection of the at least one probability distribution function; and
g) in response to receiving the another selection, repeating steps c through f, otherwise in response to not receiving another selection then ending a processing of the steps c through f.

US Pat. No. 10,713,302

SEARCH PROCESSING METHOD AND DEVICE

TENCENT TECHNOLOGY (SHENZ...

1. A searching processing method, comprising:obtaining, when a first preset time interval arrives, a plurality of historical searching character strings collected within the first time interval;
generating at least one searching character variable sentence pattern corresponding to each of the plurality of historical searching character strings according to a preset searching character variable set;
accumulating a quantity of generating times corresponding to a searching character variable sentence pattern not belonging to a preset common searching sentence pattern set in the generated searching character variable sentence pattern;
adding a searching character variable sentence pattern whose quantity of generating times reaches a first preset threshold of a quantity of times to the preset common searching sentence pattern set;
obtaining a current searching character string sent by a client; and
in response to the current searching character string:
determining a searching character variable sentence pattern belonging to the preset common searching sentence pattern set in at least one searching character variable sentence pattern corresponding to the current searching character string as a target searching character variable sentence pattern,
performing a search query against a database of search templates for media content, the search query including the target searching character variable sentence pattern, and
sending searching result data corresponding to the target searching character variable sentence pattern to the client, the search result data including one or more content items matching the target searching character variable sentence pattern.

US Pat. No. 10,713,301

FLEXIBLE BASELINES IN AN OPERATING PLAN DATA AGGREGATION SYSTEM

RIGHT90, INC., Santa Cla...

1. A computer implemented method of maintaining information in multiple OLAP cubes data structures of a database of a computer and propagating information in real-time through the OLAP cubes to reduce delays in generating an updated baseline forecast, comprising:for each of multiple organizations, dedicating an instance of one of the OLAP cubes to each of the organizations;
for each of the multiple organizations, performing by the computer programmed with code stored in a memory and when the code is executed by a processor of the computer to configure the computer into a machine for:
partitioning each of the OLAP cubes of the database into at least a first partition and a second partition;
receiving a set of initial forecast data representing a prediction or judgment for a future event by the computer;
for each organization, storing the forecast data in the first partition of the OLAP cube of the database dedicated to the organization;
incorporating the set of initial forecast data into the database through the instance of the OLAP cube for analytical processing dedicated to the organization;
processing the initial forecast data by the computer to determine the prediction or judgment for the future event and generating an initial baseline forecast from information stored in the database, including the initial forecast data;
receiving updates to the information stored in the database on an asynchronous or random basis, the updates including changes to the initial forecast data and comments about the initial forecast data;
for each organization, updating the first partition of the OLAP cube of the computer database every time T1, wherein T1 is an amount of time;
identifying some updated information as private and remaining updated information is non-private;
identifying some updated information as allowed and the remaining updated information as denied;
processing the updates by the computer to incorporate the non-private and allowed updates into the database, the database including updates to the initial forecast data for any changes to the initial forecast data;
associating any comments about the initial forecast data including any comments about the updated forecast data, with the forecast data;
propagating the processed updates, the received comments, and the received changes to the initial forecast data in essentially real-time throughout the database through the instance of the OLAP cube dedicated to the organization to (i) associate the received comments and changes with the forecast information and (ii) asynchronously update the baseline forecast with the received updated non-private information changes of the forecast information in essentially real-time;
associating the received comments and changes with the forecast information;
asynchronously updating the baseline forecast with the received changes of the forecast information in essentially real-time;
for each organization, storing the updates in the second partition of the OLAP cube dedicated to the organization;
for each organization, updating the second partition of the OLAP cube dedicated to the organization every time T2, wherein T2 is an amount of time and T2 is less than T1 for each organization; and
generating an updated baseline forecast from the updated OLAP cube and the initial baseline forecast.

US Pat. No. 10,713,300

USING DISTRIBUTED STATE MACHINES FOR HUMAN-TO-COMPUTER DIALOGS WITH AUTOMATED ASSISTANTS TO PROTECT PRIVATE DATA

GOOGLE LLC, Mountain Vie...

1. A method implemented by one or more processors within a security zone, comprising:receiving, at an automated assistant client implemented by one or more of the processors of a client device within the security zone, a free form natural language query from a user, wherein the free form natural language query is answerable based on private information that is available from one or more resources within the security zone, wherein the one or more resources are not stored on the client device, and wherein the security zone comprises a plurality of networked computing devices behind a firewall;
providing, via the firewall, first data indicative of the free form natural language query to a semantic processor, wherein the semantic processor is outside of the security zone and cannot directly access the one or more resources within the security zone;
receiving, via the firewall and at one or more of the processors within the security zone, from the semantic processor, second data indicative of a state machine, wherein the state machine is implementable to obtain the private information from one or more of the resources within the security zone;
implementing, by one or more of the processors within the security zone, the state machine to obtain the private information from one or more of the resources within the security zone;
generating, based on the state machine and the obtained private information, natural language output that conveys information responsive to the free form natural language query; and
providing, by the automated assistant client, at one or more output components, the natural language output.

US Pat. No. 10,713,299

STAGED TRAINING OF NEURAL NETWORKS FOR IMPROVED TIME SERIES PREDICTION PERFORMANCE

SAS INSTITUTE INC., Cary...

1. An apparatus comprising a processor and a storage to store instructions that, when executed by the processor, cause the processor to perform operations comprising:train a first neural network of a chain of neural networks to generate a first portion of multiple portions of time series data that corresponds to a temporally earliest subrange of time of multiple subranges of time within a full range of time that is covered by the time series data, wherein:
the chain comprises a set of neural networks ordered to start with the first neural network at a head of the chain and to end with a last neural network at a tail of the chain;
each neural network of the chain comprises external inputs, additional inputs and outputs;
each neural network of the chain generates a portion of the multiple portions of the time series data at the outputs of the neural network from input data values provided at the external inputs of the neural network;
each portion of the multiple portions of the time series data corresponds to a subrange of the multiple subranges; and
the set of neural networks is interconnected within the chain such that each neural network, except the first neural network at the head of the chain, receives, at the additional inputs of the neural network, a portion of the multiple portions of the time series data that is generated at the outputs of a preceding neural network in the ordering of neural networks within the chain;
retrieve, from the first neural network, a first neural network configuration data comprising hyperparameters and first trained parameters learned by the first neural network from the training of the first neural network;
train, using at least the first neural network configuration data, a next neural network in the ordering of neural networks within the chain to generate a next portion of the multiple portions that corresponds to a next subrange of time of the multiple subranges of time that temporally follows the earliest subrange;
retrieve, from the next neural network, a next neural network configuration data comprising the hyperparameters and next trained parameters learned by the next neural network from the training of the next neural network; and
use at least the first neural network configuration data and the next neural network configuration data to instantiate the chain.

US Pat. No. 10,713,298

VIDEO RETRIEVAL METHODS AND APPARATUSES

BEIJING ZHIGU RUI TUO TEC...

1. A video retrieval method, comprising:receiving video query information;
determining a semantic concept group sequence according to the video query information, the semantic concept group sequence comprising at least two semantic concept groups and group sequential information between the at least two semantic concept groups, and each semantic concept group in the at least two semantic concept groups comprising at least one simple semantic concept;
wherein the determining a semantic concept group sequence according to video query information comprises:
determining at least two simple semantic concepts and concept sequential information between the at least two simple semantic concepts according to the video query information;
wherein determining the concept sequential information between the at least two simple semantic concepts according to the video query information comprises:
analyzing conjunctions comprised in the video query information; and
determining the concept sequential information of different simple semantic concepts in the at least two simple semantic concepts according to an analysis result of the conjunctions;
clustering simple semantic concepts corresponding to a first concept sequential information into a first semantic concept group, and clustering simple semantic concepts corresponding to a second concept sequential information into a second semantic concept group to obtain the at least two semantic concept groups, wherein the at least two semantic concept groups comprise the first semantic concept group and the second semantic concept group; and
determining the semantic concept group sequence according to the at least two semantic concept groups and the group sequential information between the at least two semantic concept groups; and
retrieving videos at least according to the semantic concept group sequence.

US Pat. No. 10,713,297

CONSOLIDATING VIDEO SEARCH FOR AN EVENT

INTERNATIONAL BUSINESS MA...

1. A computer-implemented method comprising:receiving, by a computer device, a search query from a user computer device;
determining, by the computer device, search results comprising a set of videos that satisfy the search query;
automatically displaying, by the computer device, a matrix of the search results including a horizontal axis based on a first type of video metadata of the search results and a vertical axis based on a second type of video metadata of the search results;
receiving, by the computer device, a user selected level of granularity that defines a number of rows of the matrix of search results;
displaying, by the computer device, a first selectable icon enabling a user to select the horizontal axis of the matrix, wherein a selection of the first selectable icon results in the computer device generating a first type of consolidated video based on the first type of video metadata;
displaying, by the computer device, a second selectable icon enabling the user to select the vertical axis of the matrix, wherein a selection of the second selectable icon results in the computer device generating a second type of consolidated video based on the second type of video metadata, wherein the first selectable icon and the second selectable icon are displayed simultaneously; and
generating, by the computer device based on a user-input selection, the one of the first type of consolidated video or the second type of consolidated video from the set of videos by merging a first portion of a first one of the set of videos with a second portion of a second one of the set of videos, wherein a third portion of the first one of the set of videos overlapping with a fourth portion of the second one of the set of videos is excluded.

US Pat. No. 10,713,296

AUDIO IDENTIFICATION BASED ON DATA STRUCTURE

GRACENOTE, INC., Emeryvi...

1. A computerized method comprising:accessing, using one or more hardware processors, reference audio to be represented by a reference data structure to be generated and stored in a reference database;
generating, using the one or more hardware processors, the reference data structure from the reference audio by at least:
performing a constant Q transform on multiple reference time slices of the reference audio;
binarizing the constant Q transformed reference time slices of the reference audio;
performing a two-dimensional Fourier transform on multiple reference time windows within the binarized and constant Q transformed reference time slices of the reference audio to obtain two-dimensional Fourier transforms of the reference time windows; and
sequentially ordering the two-dimensional Fourier transforms of the reference time windows in the reference data structure;
creating, within the reference database, a data association between the reference audio and the generated reference data structure that includes the sequentially ordered two-dimensional Fourier transforms of the reference time windows, the created data association indicating that the reference data structure is an identifier of the reference audio;
accessing query audio to be represented by a query data structure for comparison to the reference data structure that represents the reference audio; and
generating the query data structure from the query audio by at least:
performing a constant Q transform on multiple query time slices of the query audio;
binarizing the constant Q transformed query time slices of the query audio by, for each constant Q transformed query time slice, calculating a median value of a range of constant Q transformed query time slices that encompasses the constant Q transformed query time slice and binarizing the constant Q transformed query time slice based on the calculated median value of the range;
performing a two-dimensional Fourier transform on multiple query time windows within the binarized and constant Q transformed query time slices of the query audio to obtain two-dimensional Fourier transforms of the query time windows; and
sequentially ordering the two-dimensional Fourier transforms of the query time windows in the query data structure.

US Pat. No. 10,713,295

GENERATING CUSTOM AUDIO CONTENT FOR AN EXERCISE SESSION

Fitbit, Inc., San Franci...

1. A method of generating a customized exercise video for a user, the method being implemented using (a) a computer system comprising one or more processors and (b) a sensor device comprising one or more sensors, the method comprising:displaying a first exercise video to the user, wherein the first exercise video comprises video content of an exercise session comprising one or more components, the one or more components corresponding to one or more physical exercises and meeting one or more criteria with respect to one or more user ranks of the user;
receiving sensor data of the user from the sensor device, wherein the sensor data of the user are generated by the one or more sensors when the sensor device is attached to the user and the user is performing one or more of the one or more components, and wherein the sensor data of the user or data derived therefrom are indicative of the user's physical or physiological condition;
modifying, based on the sensor data of the user and by the one or more processors, at least one user rank of the one or more user ranks;
identifying, by the one or more processors, at least one new component meeting a criterion with respect to the at least one modified user rank; and
generating, by the one or more processors, a second exercise video comprising content of a physical exercise corresponding to the at least one new component.

US Pat. No. 10,713,294

METHOD FOR LEARNING CROSS-DOMAIN RELATIONS BASED ON GENERATIVE ADVERSARIAL NETWORKS

SK TELECOM CO., LTD., Se...

1. A system for translating data between first and second domains using generative adversarial network (GAN), the system comprising:a first generator configured to translate a first data in the first domain to a first translated data;
a second generator configured to translate a second data in the second domain to a second translated data;
a first discriminator configured to discriminate between the first data of the first domain and the second translated data translated by the second generator; and
a second discriminator configured to discriminate between the second data of the second domain and the first translated data translated by the first generator,
wherein the first generator is further configured to be adversarially trained against the second discriminator, and the second generator is further configured to be adversarially trained against the first discriminator.

US Pat. No. 10,713,293

METHOD AND SYSTEM OF COMPUTER-PROCESSING ONE OR MORE QUOTATIONS IN DIGITAL TEXTS TO DETERMINE AUTHOR ASSOCIATED THEREWITH

YANDEX EUROPE AG, Lucern...

1. A computer implemented method for processing one or more quotations in digital texts to determine an author associated therewith, the method executable by a server configured to execute a news aggregator service, the server being coupled to a plurality of digital news services via a communication network, the method comprising:receiving a plurality of digital texts from a database;
parsing each of the plurality of digital texts to extract one or more quotations therefrom, the parsing being executed by applying one or more parsing rules;
identifying at least one associated candidate author for each of the one or more quotations, the identifying being executed by applying one or more identification rules;
assigning, by a first classifier, a quotation similarity value for a given quotation with respect to each of a remaining one or more quotations, the quotation similarity value being representative of a likelihood of the given quotation originating from a same quotation with respect to each of the remaining one or more quotations;
generating a quotation cluster, the quotation cluster comprising:
one or more similar quotations, the one or more similar quotations comprising the given quotation and a subset of the remaining one or more quotations each having the similarity value above a threshold;
a set of candidate authors, the set of candidate authors comprising at least one candidate author associated with each of the one or more similar quotations;
analyzing the set of candidate authors to identify a given candidate author meeting a condition; and
storing the candidate author meeting the condition as the author of the one or more similar quotations.

US Pat. No. 10,713,292

DOCUMENT ANALYSIS APPARATUS AND DOCUMENT ANALYSIS PROGRAM

KABUSHIKI KAISHA TOSHIBA,...

1. A document analysis apparatus comprising:a first document storage circuit for storing first documents, the first documents including first words, wherein the first documents belong to respective categories constituting a hierarchical structure, and the first documents only include opinion documents for a desirable object;
a second document storage circuit for storing second documents, the second documents including second words, and the second documents include the opinion documents for the desirable object and non-opinion documents, wherein at least one of the second documents is classified into a second category, which is one of the respective categories constituting the hierarchical structure;
a document extraction circuit for extracting first extracted documents and second extracted documents from the first document storage circuit and the second document storage circuit, the first extracted documents and the second extracted documents satisfying a condition, wherein the condition is an input being accepted in response to an operation of a user;
an opinion document classification circuit for defining, as training documents, the first extracted documents and the at least one of the second documents classified into the second category among the second extracted documents, and classifying, into the opinion documents and the non-opinion documents, at least another of the second documents that does not belong to the respective categories among the second extracted documents;
an existing category classification circuit for defining, as the training documents, the stored first documents and the at least one of the second documents classified into the second category among the stored second documents, and classifying the classified opinion documents into one of the respective categories to which the training documents belong;
a document clustering circuit for defining, as an object, another opinion document that is not classified into any one of the respective categories by the existing category classification circuit, executing document clustering processing for the object, preparing a new category, and classifying the another opinion document into the new category;
a category determination circuit for defining, as the training documents, a first category to which the stored first documents belong and the second category, and determining whether or not the new category becomes a child category that is subordinate to one of the first and second categories to which the training documents belong,
wherein new first documents and new second documents are successively stored in the first document storage circuit and the second document storage circuit respectively;
a first new category determination circuit for determining whether or not the opinion documents of a predetermined ratio of the opinion documents belonging to the new category are the latest documents stored in the second document storage circuit, when the category determination circuit determines that the new category does not become the child category;
a first new category certification circuit for certifying the new category as one of the respective categories constituting the hierarchical structure, when the first new category determination circuit determines that the opinion documents are the latest documents stored in the second document storage circuit;
a second new category determination circuit for determining whether or not a ratio of a first number of the users who prepared the opinion documents belonging to the new category to a second number of the users who prepared the first extracted documents and the second extracted documents is in excess of the predetermined ratio, when the category determination circuit determines that the prepared new category does not become the child category; and
a second new category certification circuit for certifying the prepared new category as one of the respective categories constituting the hierarchical structure, when the second new category determination circuit determines that the ratio is in excess of the predetermined ratio.

US Pat. No. 10,713,291

ELECTRONIC DOCUMENT GENERATION USING DATA FROM DISPARATE SOURCES

Accenture Global Solution...

1. A computer-implemented method for providing an electronic document, the method being executed by one or more processors and comprising:receiving, by the one or more processors, text content comprising a plurality of segments, the text content being received from one or more data sources;
providing, by the one or more processors, a predefined list of topics based on a selected application, the selected application being selected from a list of applications and indicating a type of electronic document that is to be generated;
receiving, by the one or more processors, a selection of a set of topics to be included in an electronic document, the set of topics comprising one or more topics selected from the predefined list of topics by a user through a graphical user interface;
for each topic in the set of topics, providing, by the one or more processors, a set of contextual words associated with a respective topic, contextual words being determined from a lexical database, each contextual word having a respective frequency, the frequency indicating a number of times that the respective contextual word appears in definitions of the respective topic, a number of times that the respective contextual word appears in definitions of synonyms of the respective topic, and a number of times that the respective contextual word appears in examples in which the respective topic is included;
determining, by the one or more processors, a score for each segment and topic pair, the score indicating a relevance of a respective topic to a respective segment, each score being determined based on respective contextual words of the respective topic and frequencies of the respective contextual words;
for each topic, providing, by the one or more processors, a summary comprising at least one segment based on respective score; and
providing, to a user device, an electronic document comprising one or more summaries, wherein the electronic document is of the type indicated by the selected application.

US Pat. No. 10,713,290

RAPID ACCOUNT REGISTRATION WITH AUTOFILL AND FACIAL RECOGNITION

AMERICAN EXPRESS TRAVEL R...

1. A method comprising:transmitting, by a computer-based system, a phone number linked to a mobile device and a request for user information to a carrier integration server;
receiving, by the computer-based system, the user information from the carrier integration server;
autofilling, by the computer-based system, a field in an account registration page with the user information;
generating, by the computer-based system, a user interface having a first area for capturing a first image of a face of a user operating the mobile device and a second area for capturing a second image of an identification card of the user;
receiving, by the computer-based system and from the mobile device, a photograph captured from the user interface rendered on the mobile device, the photograph comprising the first image of the face of the user operating the mobile device and the second image of the identification card of the user having the face of the user;
performing, by the computer-based system, facial recognition on the photograph by comparing the first image with the second image;
determining, by the computer-based system and based on the facial recognition, that a user operating the mobile device is associated with the user information; and
creating, by the computer-based system, an account for the user.

US Pat. No. 10,713,289

QUESTION ANSWERING SYSTEM

Amazon Technologies, Inc....

1. A computer-implemented method comprising:receiving query data representing a query for information;
identifying a data structure comprising:
a plurality of nodes that each represent a respective fact, and
a plurality of links that each represent a respective relationship between facts;
identifying a first function corresponding to a potential answer to the query, the first function being dependent upon a first fact corresponding to a first node of the plurality of nodes;
selecting a first subportion of the data structure, the first subportion comprising the first function linking the first node to a second node representing an answer to the query;
identifying a second function corresponding to a potential answer to the query, the second function being dependent upon a second fact corresponding to a third node;
selecting a second subportion of the data structure, the second subportion comprising the second function linking the third node to the second node; and
determining a portion of the data structure to include the first subportion and the second subportion, such that the second node becomes a terminal node of the portion.

US Pat. No. 10,713,288

NATURAL LANGUAGE CONTENT GENERATOR

Semantic Machines, Inc., ...

1. A method for providing a conversational system that generates natural language content, comprising:maintaining, on a computing device, a dialogue state representation for a conversation between a user and an agent executing on the computing device, wherein the dialogue state representation includes a hypergraph including a plurality of hyperedges, each hyperedge having an associated natural language description;
recognizing a content generation event initiated by the agent, designating an object to be described;
selecting, with a previously-learned scoring function, a hyperedge in the hypergraph associated with a first attribute of the object;
outputting an associated natural language description of the first attribute of the object;
updating the hypergraph to indicate that the associated natural language description of the first attribute of the object was output;
recognizing a subsequent content generation event initiated by the agent, designating the same object to be described;
selecting, with the previously-learned scoring function, a different hyperedge in the hypergraph associated with a second, different attribute of the object; and
outputting an associated natural language description of the second, different attribute of the object.

US Pat. No. 10,713,287

COMPUTERIZED METHOD AND APPARATUS FOR AUTOMATED DISTRIBUTED INGEST AND PRESENTATION OF MULTI-DOMAIN METRICS

Express Scripts Strategic...

1. A computerized search method comprising:specifying a first predefined label for use with the computerized search method;
receiving first input designating a first location of a first analytic;
in response to a scheduling event:
obtaining a first document from the first location;
identifying the first predefined label within the first document;
obtaining a first datum associated with the first predefined label from the first document;
storing the first datum into a value index as a current value of the first analytic;
obtaining a second datum associated with the first predefined label from the first document; and
storing the second datum into a text index as a textual description of the first analytic;
presenting a search interface; and
in response to receiving a search query from a user via the search interface:
identifying a set of result analytics relevant to the search query based on the text index; and
using the search interface, presenting, for each analytic of the set of result analytics, a textual description of the analytic from the text index and a most recent value of the analytic from the value index.

US Pat. No. 10,713,286

STORAGE OF POINT OF INTEREST DATA ON A USER DEVICE FOR OFFLINE USE

MICROSOFT TECHNOLOGY LICE...

1. One or more computer storage media comprising computer-executable instructions that when executed by a computing device cause the computing device to perform a method of storing point of interest data for offline consumption, the method comprising:receiving digital interaction data for points of interest located in a geographic region, the digital interaction data describing interactions of people with the points of interest;
identifying a first plurality of points of interest with above a low threshold of digital interaction within the digital interaction data;
identifying a second plurality of points of interest with above a medium threshold of digital interaction within the digital interaction data, wherein the medium threshold is different from the low threshold;
identifying a third plurality of points of interest with above a high threshold of digital interaction within the digital interaction data, wherein the high threshold is different from the medium threshold and the low threshold, and wherein an individual point of interest with above the high threshold of digital interaction is also above the medium threshold and the low threshold;
generating a first-tier general offline-map-data collection comprising first-tier information for points of interest in the first plurality of points of interest;
generating a second-tier general offline-map-data collection comprising second-tier information for points of interest in the second plurality of points of interest;
generating a third-tier general offline-map-data collection comprising third-tier information for points of interest in the third plurality of points of interest; and
communicating the first-tier general offline-map-data collection, the second-tier general offline-map-data collection, and the third-tier general offline-map-data collection to a user device associated with a user with a geographic profile that includes the geographic region.

US Pat. No. 10,713,285

GEOCODING LOCATIONS NEAR A SPECIFIED CITY

Uber Technologies, Inc., ...

1. A method for locating a geographic object, the method comprising:receiving, by a computer, request data to locate a first geographic object on a digital map, the request data being indicative of at least first and second address components;
identifying, by the computer, a second geographic object having a first address component matching the first address component of the request data and a second address component differing from the second address component of the request data, the first address component of the second geographic object being found within a region defined by the second address component of the second geographic object; and
providing, for display on the digital map, indicia of the identified second geographic object, and
wherein a distance from the second geographic object to the received second address component of the first geographic object is at most a buffer distance from a geographic region represented by a union of all geographic objects having the second address component of the first geographic object.

US Pat. No. 10,713,284

PLATFORM-BASED DATA SEGREGATION

SAP SE, Walldorf (DE)

1. A system comprising:a first computing device comprising:
a first memory storing first processor-executable process steps and one or more logical database tables, each database table having one or more columns; and
a first of at least one processor to execute the first processor-executable process steps to cause the first computing device to:
receive a first query;
determine that the first query is associated with a first table including geographically-restricted data based on the first table including a partitioning column storing geographic identifiers of geographic locations in which the geographically-restricted data of the first table is to be stored, the geographically-restricted data restricted to being stored in a specific geographic location;
determine, based on the partitioning column of the first table and on the first query, (i) first partition of the first table, the first partition being associated with a first geographic identifier of the geographic identifiers stored in the partitioning column of the first table, (ii) a first remote storage location of a first portion of the first partition storing geographically-restricted data restricted to the geographic location specified by the first geographic identifier, and (iii) a first local storage location of a second replicated portion of the first partition storing a subset of data from the first partition other than the geographically-restricted data restricted to the geographic location specified by the first geographic identifier, the first local storage location being located in a geographic location different from the geographic location specified by the first geographic identifier; and
execute the first query in conjunction with the first remote storage location of the first portion of the first partition and the first local storage location of the second replicated portion of the first partition.

US Pat. No. 10,713,283

DATA SET IDENTIFICATION FROM ATTRIBUTE CLUSTERS

Microsoft Technology Lice...

1. A method comprising:receiving a first identifier for a first member, the first identifier associated with a first member profile comprising attributes of the first member;
identifying, by one or more hardware processors, a set of second members associated with the first member, the set of second members associated with a set of second identifiers, the set of second identifiers associated with a set of second member profiles comprising attributes of the set of second members and a link to one or more members;
generating, by the one or more hardware processors, a cluster comprising the first member profile and one or more member profiles of the set of second member profiles;
generating, by the one or more hardware processors, a cluster representation comprising a set of cluster attributes, the set of cluster attributes comprising at least a portion of the attributes of the first member and the attributes of the set of second members;
identifying, by the one or more hardware processors, a plurality of data sets associated with a set of core attributes, at least one core attribute of the set of core attributes corresponding to one or more attributes of the set of cluster attributes; and
causing display of an identification for at least one data set of the plurality of data sets at a display device associated with the first member, the at least one data set is selected for display based on a determination that the set of second members is deficient in the one or more core attributes, the determination being based on a level of association between the cluster and one or more core attributes associated with the at least one data set being determined to be below a threshold level, the threshold level representing a level below which the set of second members is deficient in the one or more core attributes.

US Pat. No. 10,713,282

SYSTEMS AND METHODS FOR SEAMLESS ACCESS TO REMOTELY MANAGED DOCUMENTS USING SYNCHRONIZATION OF LOCALLY STORED DOCUMENTS

OPEN TEXT SA ULC, Halifa...

7. A method for editing files stored on a remote content server comprising:providing a sync agent deployed on a client computing device coupled over a network to a content server, wherein the client computing device includes a file system and a local cache associated with the content server in the file system of the client, and wherein the sync agent is configured to send a request to the content server for a content stored at the content server, receive the content in response to the request, and store the content in the local cache associated with the content server; and
providing a cache filter disposed between an editor application deployed on the client computing device and the file system of the client computing device, the cache filter configured to intercept file system requests from the editor application when the content in the local cache is open for editing in the editor application, wherein the file system requests include a change request associated with a change to the content in the local cache, the cache filter further configured to inform the sync agent of the change request such that the sync agent makes the change request to the content server to make the change to the content on the content server and the cache filter passes the change request to the file system so that the change can be made on the content in the local cache.

US Pat. No. 10,713,281

INTELLIGENT BATCHING OF VERIFICATION REQUESTS FOR PROFILE STORES

INTUIT, INC., Mountain V...

1. A method for managing synchronization between a profile store and a source of truth that is used to update the profile store, comprising:obtaining a request to compare a first set of attributes from a profile for an entity in the profile store with a source of truth for the first set of attributes, wherein the source of truth further comprises a second set of attributes; and
processing the request on a catch-up service executing on a processor by:
performing one of:
setting a period for delaying processing of the request so that a frequency of access by the catch-up service to the second set of attributes in the source of truth does not exceed a threshold; or
setting the period for delaying processing of the request so that a number of requests identified in a pattern of requests from a source of the request are ignored before the request is processed;
during the period, reducing a load on the source of truth by ignoring additional requests to compare the profile with the source of truth; and
after the period has passed:
obtaining, over a first network connection with the profile store, the first set of attributes from the profile, wherein the profile is shared and updated by a set of remote offerings that use the profile to perform one or more tasks for the entity;
obtaining, over a second network connection with the source of truth, the second set of attributes from the source of truth, wherein the second set of attributes from the source of truth is used by the set of remote offerings to perform one or more additional tasks for the entity;
obtaining a mapping between the first set of attributes and the second set of attributes;
using the mapping to compare the first set of attributes and the second set of attributes for mismatches; and
when a mismatch between the first set of attributes and the second set of attributes is found, correcting the mismatch by modifying the first set of attributes in the profile store based on one or more values from the second set of attributes.

US Pat. No. 10,713,280

SYSTEMS AND METHODS FOR MANAGING DISTRIBUTED DATABASE DEPLOYMENTS

MongoDB, Inc., New York,...

1. A cloud distributed database, the database comprising:at least one cloud based resource, the at least one cloud based resource including processor and memory;
a database subsystem executing on the at least one cloud based resource, wherein the database subsystem comprises:
at least one replica set comprising a primary node hosting a primary database instance that accepts database write operations from client systems, and at least two secondary nodes that host copies of data of the primary database instance that replicate logged operations from the primary node;
a proxy layer configured to:
control authentication of client systems based on connection strings communicated from the client systems connecting to the at least one cloud resources;
assign a portion of the at least one cloud based resource and operating capability of the database subsystem to respective clients;
manage access to the database application for respective clients based on the client connection strings to enable transparent execution of write and read commands against the database subsystem and respective portions of the database hosted by the replica set, and communicate a result to the client system from the portion of database associated with the client system responsive to client communicated operations; and
a monitoring component, executing within the proxy layer, configured to:
monitor usage metrics for cloud resource utilization and database operation;
wherein the proxy layer is further configured to limit resource utilization by any client to pre-defined thresholds for processor, bandwidth, memory, and storage based on usage metrics from the monitoring component.

US Pat. No. 10,713,279

ENHANCED REPLICATION

Microsoft Technology Lice...

1. A method of providing enhanced replication to facilitate data protection, the method comprising:transferring health information from a plurality of host servers that host a plurality of replication targets to a source host server that hosts a replication source, wherein the health information comprises an individual health of the replication process for each of the plurality of host servers that host the plurality of replication targets;
in the source host server, transferring the health information from the source host server to an update server that initiates updates to the replication source;
in the update server, determining a composite health of the replication process based on the health information; and
in the update server, controlling the updates to the replication source based on the composite health of the replication process by at least delaying the updates.

US Pat. No. 10,713,278

FLEXIBLE CONFIGURATION OF OFFLINE SYNCHRONIZATION SCOPE

SAP SE, Walldorf (DE)

1. A computerized method executed by at least one processor, the method comprising:identifying a triggering event associated with a request to perform a synchronization of a client application executing on a client device, the request associated with a request for a partial synchronization of the client application;
obtaining a set of information defining a request context associated with the request to perform the synchronization of the client application, wherein the request context identifies a network connection speed or connection quality of the client device to a particular communications network at the time of the identified triggering event;
identifying a set of potential partial synchronization scenarios, each of the potential partial synchronization scenarios associated with a predefined synchronization context;
comparing the request context to the predefined synchronization contexts of the set of potential partial synchronization scenarios to identify a particular partial synchronization scenario corresponding to the request context; and
in response to identifying the particular partial synchronization scenario corresponding to the request context, performing a set of synchronization operations defined in the identified partial synchronization scenario.

US Pat. No. 10,713,277

PATCHING CONTENT ACROSS SHARED AND TENANT CONTAINERS IN MULTI-TENANCY DATABASE SYSTEMS

SAP SE, Walldorf (DE)

1. A system comprising:one or more computers;
a non-transitory computer-readable medium coupled to the one or more computers, the computer readable medium having instructions stored thereon which, when executed by the one or more computers, cause the one or more computers to perform operations;
wherein the computer-readable medium comprises:
a shared database container at a first software version; and
multiple tenant database containers each including data for a respective tenant;
wherein the shared database container includes shared content shared by multiple tenants; and
wherein each tenant database container includes local content that is local to a respective tenant; and
wherein the operations comprise:
receiving a first deployment package for upgrading the system to a second software version;
deploying the first deployment package to the shared database container, including:
identifying shared objects that are completely stored in the shared database container, including identifying at least one current shared table in the shared database container that is to store deployed shared content;
determining first shared content for the shared objects in the first deployment package;
identifying partially-shared objects that have a shared portion in the shared database container and a tenant portion in the tenant database container;
determining second shared content for the partially-shared objects in the first deployment package; and
deploying the determined first shared content and the determined second shared content to the shared database container as deployed shared content, wherein deploying the determined first shared content includes:
for each respective current shared table in the shared database container that is to store deployed shared content:
 creating a copy of the respective current shared table;
 determining third shared content to deploy to the respective shared table; and
 deploying the third shared content to the copy of the respective shared table; and
deploying the first deployment package to each respective tenant database container, including:
determining first local content for the partially-shared objects in the first deployment package;
deploying the first local content to the respective tenant database container;
identifying local objects that do not store data in the shared database container;
identifying second local content for the local objects in the first deployment package; and
deploying the second local content to the respective tenant database container.

US Pat. No. 10,713,276

DATA TRANSITION IN HIGHLY PARALLEL DATABASE MANAGEMENT SYSTEM

OCIENT, INC., Chicago, I...

1. A database management system comprising:an index store that includes a set of index nodes for storing and managing indexes for accessing data of the database management system; and
a payload storage that includes a set of coding clusters for storing the data, wherein the set of coding clusters includes a first coding cluster and a second coding cluster, and wherein:
the first coding cluster includes:
a first set of storage nodes, wherein each storage node of the first set of storage nodes includes a processing unit, a network interface, memory and a storage device, wherein each storage node is operable to store first data of a first temperature in a first temperature segment of the storage device, wherein the first temperature indicates an expected access rate of the first data is above a first access rate threshold, and wherein each first temperature segment of the first set of storage nodes forms a first temperature segment group; and
the second coding cluster includes:
a second set of storage nodes, wherein each second storage node of the second set of storage nodes includes a second processing unit, a second network interface, second memory and a second storage device, wherein each second storage node is operable to store second data of a second temperature in a second temperature segment of the second storage device, wherein the second temperature indicates the expected access rate of the second data is below the first access rate threshold and above a second access rate threshold, and wherein each second temperature segment of the second set of storage nodes forms a second temperature segment group, wherein a segment of the first and second temperature segments is a portion of a respective storage device, wherein a number of storage nodes in the first set of storage nodes is equal to the number of storage nodes in the second set of storage nodes, wherein each storage node of the first set of storage nodes is paired with a storage node of the second set of storage nodes to form a set of node pairs, wherein a node of the first or second sets of storage nodes is adapted to determine that the first data of the first temperature stored in the first temperature segment group should be transitioned to be stored as the second data of the second temperature in the second temperature segment group based on a data transition rule, wherein when the node determines the first data is to be transferred, each storage node of the first set of storage nodes is adapted to send a corresponding portion of the first data to a corresponding paired storage node of the set of node pairs such that the first data is stored as the second data of the second temperature in the second temperature segment group.

US Pat. No. 10,713,275

SYSTEM AND METHOD FOR AUGMENTING CONSENSUS ELECTION IN A DISTRIBUTED DATABASE

MongoDB, Inc., New York,...

1. A computer implemented method for managing a distributed database, the method comprising:establishing at least one primary node within a plurality of nodes, wherein the plurality of nodes comprise a distributed database system and the distributed database system provides responses to database requests from database clients;
establishing at least one secondary node configured to host a replica of data of the at least one primary node from the plurality of nodes and update the replica responsive to received replicated operations from the at least one primary node;
establishing at least one arbiter node configured to host an operation log of operations executed by the at least one primary node, wherein the at least one arbiter node does not host a replica of the data; and
electing a new primary node responsive to detecting a failure of the at least one primary node, wherein electing the new primary node includes:
executing a consensus protocol to elect one of the at least one secondary node as the new primary node, wherein the consensus protocol includes participation of the at least one secondary node and the at least one arbiter node associated with the failed at least one primary node;
evaluating election criteria at the at least one secondary node during an election period;
communicating by a respective one of the at least one secondary node i) a self-vote responsive to determining that the respective one of the at least one secondary node meets the election criteria, or ii) a confirmation of a received vote of another secondary node responsive to determining that the another secondary node is more suitable to be elected as the new primary node based on the election criteria; and
evaluating by the respective one of the at least one secondary node the operation log of the at least one arbiter node as part of the acts of determining.

US Pat. No. 10,713,274

METHOD AND/OR SYSTEM FOR TRANSFORMING BETWEEN TREES AND STRINGS

Robert T. and Virginia T....

1. A method of converting signal values for a first expression for more convenient processing and/or storage, the method comprising:accessing instructions from one or more physical memory devices for execution by one or more processors;
executing the instructions accessed from the one or more physical memory devices by the one or more processors;
storing, in at least one of the physical memory devices, signal values resulting from having executed the accessed instructions on the one or more processors,
wherein the one or more physical memory devices also store a database or a portion thereof;
wherein the accessed instructions to transform the database, or the portion thereof, to one or more first expressions in a second view;
wherein the executing the transformation instructions by the one or more processors comprises:
accessing, from the at least one of the physical memory devices, signal values for a first expression in the first view;
transforming the signal values for the first expression in the first view to signal values for the first expression in the second view,
wherein the signal values for the first expression in the first view comprise at least one of a symbol value, a numerical value, or an alphabetic value; and
wherein the signal values for the first expression in the second view comprises at least one of the following expression types: a hierarchical edge or node labeled tree; and;
storing, in the memory, the signal values corresponding to the first expression in the second view, wherein the signal values before and after the transformation correspond to content in the database.

US Pat. No. 10,713,273

REACTIVATION OF SERVICE OBJECTS USING CALL BACK ADDRESS FOR A COMMUNICATION EVENT

Microsoft Technology Lice...

5. A computer-implemented method as recited in claim 1, wherein for each of the one or more service objects, the corresponding factory object is configured to recreate a corresponding type of persisted service object.

US Pat. No. 10,713,272

DYNAMIC GENERATION OF DATA CATALOGS FOR ACCESSING DATA

Amazon Technologies, Inc....

1. A system, comprising:a plurality of compute nodes of a provider network, comprising a respective processor and a memory, that implement different services of the provider network, wherein a plurality of data sets are maintained at one or more of the different services of the provider network;
a data catalog service of the different services of the provider network, the data catalog service configured to:
receive a request to create a data catalog for the plurality of data sets;
in response to the receipt of the request to create the data catalog:
locate the plurality of data sets at other ones of the different services of the provider network;
crawl the plurality of data sets at the other different services to extract respective portions;
apply one or more structure recognition techniques to the respective portions of the data sets to determine respective structural data for to provide to a client that makes the client capable of interpreting between different items within the plurality of data sets according respective schemas determined for the data sets when the client performs access requests to individual ones of the plurality of data sets; and
store the respective structural data as part of the data catalog; and
provide access to the respective structural data in the data catalog in response to one or more requests to access the data catalog.

US Pat. No. 10,713,271

QUERYING DISTRIBUTED LOG DATA USING VIRTUAL FIELDS DEFINED IN QUERY STRINGS

Oracle International Corp...

1. A computer-implemented method, comprising:receiving a plurality of log messages, wherein each log message of the plurality of log messages includes message data, and wherein the message data includes one or more detectable signatures to segment the message data into data fields;
mapping each log message of the plurality of log messages to a message structure, wherein the message structure defines a fixed portion or a variable portion of the message data as a data field;
detecting, for each log message of the plurality of log messages, one or more data fields within the message data, based at least in part on the one or more detectable signatures included in the message data and the mapping of the log message to the message structure, wherein each data field of the one or more data fields corresponds to a value present in the message data;
receiving, via a user interface, input corresponding to a query string for querying at least a portion of the plurality of log messages, the query string including one or more virtual data fields, wherein each of the one or more virtual data fields corresponds to a function of at least one data field of the detected one or more data fields, and wherein the one or more virtual data fields are not present in the detected one or more data fields or the message structure;
parsing the query string to identify each of the one or more virtual data fields;
in response to the parsing, formulating a response to the query string at least in part by:
querying one or more log data stores using the at least one data field, wherein the plurality of log messages are stored at the one or more log data stores,
receiving, for each of the one or more log data stores, partial result data in response to the querying of the log data store, the partial result data including one or more results of querying log messages stored at the log data store,
aggregating the partial result data received from each of the one or more log data stores to determine a preliminary result for the at least one data field, and
performing the function on the preliminary result to determine a formulated response to the query string that included the one or more virtual data fields;
generating a log field view representing the formulated response to the query string, wherein the formulated response to the query string presents the preliminary result; and
presenting, at the user interface, the log field view.

US Pat. No. 10,713,270

EMERGING ISSUE DETECTION AND ANALYSIS

SAP SE, Walldorf (DE)

1. A computer-implemented method comprising:receiving, by an in-memory database engine of an in-memory database, a first input commencing a first structured exploration of an original data set stored in the in-memory database, the input specifying the original data set, a first source of information external to the original data set, and a first filter criterion;
creating, by the in-memory database engine in response to the first input, a first evidence package in the in-memory database and associated with the first structured exploration;
applying, by the in-memory database engine in response to the first input, the first source of information and the first filter criterion to the original data set, to generate a first exploration layer comprising a first subset of the original data set matching the first source of information and the first filter criterion;
receiving, by the in-memory database engine, a second input confirming a relevance of the first exploration level;
storing, by the in-memory database engine in response to the second input, first evidence of the first exploration in the evidence package, the first evidence comprising the first subset, an instance of the first source of information, the first filter criterion, and an identifier of the first structured exploration;
receiving, by the in-memory database engine, a third input comprising an instruction to display the first evidence;
communicating, by the in-memory database engine in response to the third input, the first evidence to a screen
receiving, by the in-memory database engine, a fourth input to continue the first structured exploration, the input specifying a second source of information external to the original data set, and a second filter criterion;
persisting, by the in-memory database engine after receiving the fourth input, the first subset in the in-memory database outside of the evidence package;
receiving, by the in-memory database engine, instructions to preserve a memory capacity of the in-memory database; and
deleting, by the in-memory database engine after receiving the fourth input, the first subset from the in-memory database outside of the evidence package.

US Pat. No. 10,713,269

DETERMINING A PRESENTATION FORMAT FOR SEARCH RESULTS BASED ON A PRESENTATION RECOMMENDATION MACHINE LEARNING MODEL

SPLUNK INC., San Francis...

1. A computer-implemented method, comprising:generating a first presentation recommendation based on a first query, a first search result corresponding to the first query, and a first recommendation model that associates the first query and the first search result with the first presentation recommendation, wherein the first recommendation model is generated via a machine learning algorithm based on first training data;
causing the first presentation recommendation to be provided to a user;
generating a second presentation recommendation based on a second query, a second search result corresponding to the second query, and a second recommendation model that associates the second query and the second search result with the second presentation recommendation, wherein the second recommendation model is distinct from the first recommendation model and generated via the machine learning algorithm based on second training data that includes data produced in conjunction with one or more user responses to the first presentation recommendation and stored in an interaction history database; and
causing the second presentation recommendation to be provided to either the user or a different user.

US Pat. No. 10,713,268

METHODS AND SYSTEMS FOR SOCIAL AWARENESS

Massachusetts Mutual Life...

1. A computer-implemented method comprising:collecting, by a computer, raw data generated from a plurality of interactions between a plurality of users and a plurality of user interfaces, wherein the plurality of user interfaces are displayed, by the computer, on a plurality of computing devices associated with the plurality of users, wherein the plurality of interactions comprises social network chats associated with the plurality of users;
transmitting, by the computer, the raw data generated from the plurality of interactions to a social network database, wherein the raw data generated from the plurality of interactions in stored in the social network database;
tagging and indexing, by the computer, the raw data in the social network database generated from the plurality of interactions to pre-process the raw data, wherein pre-processed data is classified to identify one or more attributes associated to the data, the computer further generating a score for each user, the score corresponding to at least one of a preparedness and availability of each user;
receiving, by the computer, a request for one or more users associated with a project, wherein the request comprises an input of a plurality of project attributes for the project;
generating, by the computer, a record of the project having the plurality of project attributes;
searching, by the computer, the social network database to identify at least one project attribute from the plurality of project attributes in the record of the project associated with the plurality of users having the one or more attributes in the data in the social network database generated from the plurality of interactions; and
generating, by the computer, a record of a team by selecting each user of the plurality of users having the one or more attributes in the data in the social network database associated with the at least one project attribute from the plurality of project attributes in the record of the project, each user within the selected plurality of users having at least one of an availability and preparedness score that satisfies a threshold.

US Pat. No. 10,713,267

NETWORK ANALYSIS SYSTEM

Microsoft Technology Lice...

1. A method, comprising:maintaining social graph data in a social network database, the social graph data representing relationships between member profiles representing members in a social network system;
based on a connection criterion associated with a first member represented by a first member profile in the social networking system, the first member being identified as associated with an entity, identifying contact members represented by respective member profiles in the social network system, wherein the social graph data indicating absence of direct connection between any member from the contact members and the first member, each of the contact members associated with the connection criterion;
determining a subset of the contact members having a specified relationship characteristic indicating an association, reflected in the social graph data, between the entity and the subset of the contact members;
for one or more members in the subset of the contact members, identifying one or more connected introduction members represented in the social graph data as directly connected to a contact member from the set of the contact members and to the first member;
generating connection scores for the one or more connected introduction members, the connection scores quantifying respective connections between the respective one or more connected introduction members and the first member;
generating contact scores for members in the subset of the contact members, the contact scores generated based on a first connection between a contact member from the subset of the contact members and an introduction member from the one or more connected introduction members, a second connection between the introduction member and the first member, and the association between the contact member and the connection criterion; and
causing presentation of the one or more members in the subset of the contact members and one or more of the connected introduction members within a graphical user interface, the presentation of the subset of the contact members in an order generated according to the contact scores, the presentation of the one or more of the connected introduction members in an order generated according to the connection scores, each member from the one or more connected introduction members presented as associated with at least one member from the subset of the contact members.

US Pat. No. 10,713,266

PROCESSING A QUERY VIA A LAMBDA APPLICATION

INTERNATIONAL BUSINESS MA...

1. A method of query processing via a lambda application including a batch processing layer and a speed processing layer, the method comprising:receiving a query including an initial timeframe;
computing partial query results within the initial timeframe, wherein the partial query results within the initial timeframe include a result for data associated with the speed processing layer and results for a first set of data segments associated with the batch processing layer, and wherein the data associated with the speed processing layer is processed with respect to speed view storage based on a window of present time that moves forward as time progresses such that older data beyond which the window moves is no longer stored in or otherwise accessible via the speed view storage;
combining the partial query results within the initial timeframe into a final query result; and
computing partial query results outside of the initial timeframe including results for a second set of data segments associated with the batch processing layer.

US Pat. No. 10,713,265

METHODS AND SYSTEMS TO QUANTIZE AND COMPRESS TIME SERIES DATA

VMware, Inc., Palo Alto,...

1. A method stored in one or more data-storage devices and executed using one or more processors of a management server computer to quantize and compress time series data generated by an object of a distributed computing system, the method comprising:partitioning the time series data stored in a data-storage device into groups of time series data for a set of quantiles that divides a range of values of the time series data such that each group contains a subset of the time series data;
for each different combination of one or more quantiles of the set of quantiles
computing quantized time series data from the time series data and the combination of one or more quantiles,
compressing the quantized time series data to generate compressed time series data,
computing a loss function value based on the quantized time series data and the time series data, the loss function value representing an amount of information lost in computing the quantized time series data, and
computing a compression rate based on a count of data points in the time series data and a count of data points in the compressed time series data; and
replacing the time series data in the data-storage device with the compressed time series data when an associated loss function value and compression rate satisfy an optimization condition.

US Pat. No. 10,713,264

REDUCTION OF FEATURE SPACE FOR EXTRACTING EVENTS FROM MEDICAL DATA

INTERNATIONAL BUSINESS MA...

1. A computer-implemented method for predicting healthcare outcomes, the method comprising:receiving, by a processor, a plurality of patient temporal traces, each of the temporal traces comprising a unique identifier, an ordered index, and a healthcare event;
conducting, by the processor, sequential pattern mining on the plurality of patient temporal traces to produce a plurality of sequential features, by:
determining, by the processor, a number of healthcare events having a minimum support, the minimum support comprising a number of transactions in the temporal traces that include the healthcare event;
generating, by the processor, a seed set based on the number of healthcare events having the minimum support;
generating, by the processor, candidate sequences based on the seed set;
determining, for each of the candidate sequences, a frequency of the candidate sequence;
selecting one or more of the candidate sequences based on the frequency of each respective candidate sequence; and
generating, by the processor, the plurality of sequential features based on the one or more selected candidate sequences;
clustering, by the processor, the sequential features with a similarity metric to create a plurality of clustered features, wherein clustering the sequential features comprises applying a Smith-Waterman Distance Matrix to the plurality of sequential features and performing nonnegative matrix factorization, wherein the sequential features comprise features of a feature space of a predictive model, wherein clustering the sequential features reduces a total number of sequential pattern features to reduce the feature space of the predictive model and create a reduced feature space of the predictive model, and wherein the plurality of clustered features comprise features of the reduced feature space of the predictive model; and
analyzing, by the processor, the clustered features to predict a healthcare outcome, wherein predicting the healthcare outcome comprises applying the predictive model to the reduced feature space of the predictive model and outputting a predicted outcome to a display, wherein the predictive model identifies a relationship between a respective clustered feature of the reduced feature space and a respective healthcare outcome, and wherein the predicted healthcare outcome represents a likelihood that a specified drug treatment will result in recovery for a condition.

US Pat. No. 10,713,263

RANKING ALGORITHMS USING UNIQUE BUCKETING IDENTIFIERS

GOOGLE LLC, Mountain Vie...

1. A method comprising:identifying, by a processing device, a set of content items as candidates for inclusion in a feed displayed to a user of a social network platform in a user interface of the social network platform, wherein the set of content items are hosted by a content sharing platform and are identified as candidates for inclusion in the feed based on a ranking score of each content item from the set of content items, and wherein the ranking score of each content item is generated prior to identifying one or more bucketing tokens for a respective content item from the set of content items;
for each content item from the set of content items, identifying, by the processing device, one or more bucketing tokens provided by the content sharing platform, wherein each bucketing token comprises a unique identifier that identifies a plurality of content items as being associated with a group of users of the content sharing platform that have similar interests; and
adjusting, by the processing device, a ranking score of each content item from the set of content items that has at least one bucketing token matching a bucketing token associated with the user of the social network platform, wherein the set of content items to be included in the feed displayed to the user in the user interface of the social network platform is to be modified based on adjusted ranking scores of respective content items from the set of content items.

US Pat. No. 10,713,262

COMBINED ONLINE AND OFFLINE RANKING FOR SEARCH RESULTS

A9.com, Inc., Palo Alto,...

1. A system, comprising:at least one processor; and
memory including instructions that, when executed by the processor, cause the system to:
train a first ranking function, the first ranking function generating a respective first ranking score for at least one of a set of items using a set of online data;
train a second ranking function using the respective first ranking score for the at least one of the set of items, the second ranking function generating a respective second ranking score for at least one of the set of items using the set of online data and a set of offline data;
generate a respective ranking score for each search result of a set of search results determined in response to a received search query, the respective ranking score being based at least in part upon a respective first score determined using the first ranking function and a respective second score determined using the second ranking function; and
provide at least a subset of the set of search results ordered by the respective ranking score for each search result.

US Pat. No. 10,713,261

GENERATING INSIGHTFUL CONNECTIONS BETWEEN GRAPH ENTITIES

GOOGLE LLC, Mountain Vie...

1. A system comprising:a data graph that links entities by relationships, each relationship having one of a plurality of labels;
an index for searching a document corpus; and
a query handling system that includes:
at least one processor, and
a memory storing instructions that, when executed by the at least one processor cause the query handling system to perform operations including:
receiving a query,
generating a search result for the query using the index, based on documents responsive to the query,
identifying a first entity from the data graph and a second entity from the data graph corresponding to the query,
identifying first-degree paths from the data graph for the first entity, a first-degree path including a relationship and a target entity,
identifying first-degree paths from the data graph for the second entity,
determining that at least one first-degree path for the first entity matches at least one first-degree path for the second entity, the at least one matched first-degree path being a matched connection, and
including information for the relationship label and the target entity from the matched connection in the search result.

US Pat. No. 10,713,260

APPARATUS, METHOD, AND COMPUTER-READABLE RECORDING MEDIUM FOR PROVIDING INFORMATION BASED ON INFORMATION ELEMENTS IDENTIFIED BY USING USER HISTORY INFORMATION AND ESTIMATED VIEWING DURATION INFORMATION

Rakuten, Inc., Tokyo (JP...

1. An apparatus for providing information, the apparatus comprising:at least one memory configured to store computer program code; and
at least one processor configured to read the computer program code and carry out instructions in the computer program code, the computer program code comprising:
target user identifying code configured to cause at least one of the at least one processor to identify a user to whom information is to be provided;
search query identifying code configured to cause at least one of the at least one processor to identify a search query entered by the identified user and a search time when a search is performed based on the identified search query, from history information of the identified user;
expected viewing duration calculation code configured to cause at least one of the at least one processor to calculate an expected viewing duration based on
an elapsed time between the identified search time and a current time, and
an expected interval between the current time and an expected time of viewing, wherein
the expected interval being based on user interactions from the history information of the identified user, and
the expected time of viewing indicates when the identified user starts viewing information elements returned by the identified search query;
information element identifying code configured to cause at least one of the at least one processor to identify, within estimated viewing information, information elements each having an estimated viewing duration, being a duration determined based on past elapsed times between the identified search time and a corresponding viewing time of each information element by each of a plurality of users including the identified user, is less than or equal to the calculated expected viewing duration, the estimated viewing information indicating an estimated viewing duration for each of the identified information elements based on history information of each of the plurality of users and corresponding to the identified search query; and
generating code configured to cause at least one of the at least one processor to generate information to be provided to the identified user, based on information elements included in the history information of the identified user and based on the identified information elements.

US Pat. No. 10,713,259

FIELD-PROGRAMMABLE GATE ARRAY CARDS IN A STREAMING ENVIRONMENT

International Business Ma...

1. A method for increasing the performance of a stream computing application operating on one or more computer processors, the method comprising:monitoring CPU utilization levels of one or more stream operators of a stream computing application, the one or more stream operators being arranged according to an operator graph;
determining, in response to the monitoring, that a first stream operator that is configured to perform a first operation has a CPU utilization level that exceeds a CPU threshold;
determining that a field-programmable gate array (FPGA) card is configurable to perform the first operation;
configuring the FPGA card to perform the first operation;
adding the FPGA card into the operator graph;
identifying a second stream operator in the operator graph that is configured to perform a second operation on a second stream of tuples;
removing the FPGA card from the operator graph;
adding, in response to the removing the FPGA card from the operator graph, the first stream operator into the operator graph;
removing, in response to the adding the first stream operator into the operator graph, the second stream operator from the operator graph; and
re-adding, in response to the removing the second stream operator from the operator graph, the FPGA card into the operator graph.

US Pat. No. 10,713,258

SYSTEMS AND METHODS FOR VISUALIZING AND MANIPULATING GRAPH DATABASES

dRISK, Inc., Pasadena, C...

1. A graph database manipulation device comprising:at least one processor;
a memory connected to the at least one processor and storing a graph database manipulation application; and
a display device in communication with the at least one processor;
wherein the graph database manipulation application directs the at least one processor to:
obtain a graph database, wherein the graph database comprises:
a set of nodes; and
a set of edges, wherein an edge in a set of edges defines a relationship between a first node in the set of nodes and a second node in the set of nodes and an edge comprises:
edge weight metadata; and
edge display metadata, wherein the edge display metadata describes the spatial relationship between the first node and the second node;
determine a source node;
generate a set of approximated nodes by partitioning the graph database into partial segments within the graph structure;
calculate a set of approximated edges between the source node and the set of approximated nodes based on the edge weight metadata and the edge display metadata;
generate an approximate view of the graph database based on the set of approximated nodes and the set of approximated edges.

US Pat. No. 10,713,257

DATA-CENTRIC REDUCTION NETWORK FOR CLUSTER MONITORING

INTERNATIONAL BUSINESS MA...

1. A computer-implemented data-centric reduction method, the method comprising:configuring a similarity threshold and a correlation redundancy threshold for an entire data set from at least two back-end computing nodes;
reducing the entire data set to a reduced data set from the at least two back-end nodes sent to a front-end computing node by removing data based on the similarity threshold and the correlation redundancy threshold in time and space based on user-specified tolerance thresholds; and
after the front-end node receives the reduced data set, reconstructing the entire data set from the reduced data set using the similarity threshold and correlation redundancy threshold.

US Pat. No. 10,713,256

DATABASE TOOL

Bank of America Corporati...

1. An apparatus comprising:a memory configured to store:
a first cache; and
a second cache; and
a hardware processor communicatively coupled to the memory, the hardware processor configured to:
store a first query submitted by a user to a database in a transaction log;
select a set of information from the transaction log, and store the set of information in a repository, the set of information comprising:
the first query;
the date the user submitted the first query; and
an identification of the user;
determine, based on the set of information, that a probability that the user will access a first portion of the database at a future date is greater than a set threshold;
upon determining that the probability that the user will access the first portion of the database at the future date is greater than the set threshold, copy the first portion of the database into the first cache prior to the future date;
determine a second portion of the database that the user accesses at a frequency greater than a set frequency;
upon determining the second portion of the database that the user accesses at the frequency greater than the set frequency, copy the second portion of the database into the second cache;
determine that a portion of data stored in the second cache is also stored in the first cache;
upon determining that the portion of data stored in the second cache is also stored in the first cache, delete the portion of data that is stored in the second cache and is also stored in the first cache from the second cache;
receive a second query from the user;
determine that the second query is directed at data stored in the first cache;
upon determining that the second query is directed at data stored in the first cache, access the data stored in the first cache;
determine that the second query is not directed at data stored in the first cache;
upon determining that the second query is not directed at data stored in the first cache, determine that the second query is directed at data stored in the second cache; and
upon determining that the second query is directed at data stored in the second cache, access the data stored in the second cache.

US Pat. No. 10,713,255

SPOOL FILE FOR OPTIMIZING HASH JOIN OPERATIONS IN A RELATIONAL DATABASE SYSTEM

Teradata US, Inc., San D...

1. A method for spooling data for use in joining a small table with a large table in a relational database system, said method comprising the steps of:analyzing a join condition for combining records from said small and large tables and selecting qualified rows from said large table; and
writing said qualified rows to a spool file, said spool file including:
a first partition containing hash values of all bind terms for said join condition;
a second partition including a join column with a best selective bind term; and
at least one additional partition including additional join columns used in bind terms.

US Pat. No. 10,713,254

ATTRIBUTE VALUE INFORMATION FOR A DATA EXTENT

INTERNATIONAL BUSINESS MA...

1. A computer-implemented method for providing attribute value information for a data extent comprising a set of data entries, each data entry comprising an attribute string value of at least a first attribute, each attribute string value comprising a sequence of symbols, the method comprising:determining for the first attribute at least one reference string value of a data-extent-specific reference point based on symbol frequencies at each sequence position of the attribute string values of the first attribute in a subset of the set of data entries, the resulting reference string value comprising a sequence of symbols;
determining for each of the attribute string values of the first attribute in the set of data entries an attribute-string-value-specific minimum distance for any reference string value of the data-extent-specific reference point resulting in a set of attribute-string-value-specific minimum distances for the set of data entries;
storing for the data extent the minimum distance and the maximum distance of the set of attribute-string-value-specific minimum distances as attribute value information for further use with query processing.

US Pat. No. 10,713,253

ETL-LESS ZERO-REDUNDANCY SYSTEM AND METHOD FOR REPORTING OLTP DATA

SAP SE, Walldorf (DE)

1. A computer system for processing database information for both transacting and reporting, said computer system comprising:a processor; and
a memory storing instructions that, when executed by said processor, control said computer system to perform a method including:
storing said database information in a row format,
storing said database information in a column format using vertical fragmentation,
in response to a database update request, updating said database information stored in said row format, locking said database information stored in said row format, updating said database information stored in said column format, and unlocking said database information stored in said row format after said database information stored in said column format has been updated, wherein said database information stored in said row format and said database information stored in said column format share a consistent view of said database information, and
in response to a query request to retrieve data, generating a query response based on said database information stored in said column format, wherein generating said query response accesses only one or more columns needed directly for generating said query response.

US Pat. No. 10,713,252

METHODS, SYSTEMS, AND COMPUTER READABLE MEDIUMS FOR PERFORMING AN AGGREGATED FREE-FORM QUERY

EMC IP HOLDING COMPANY LL...

1. A method for performing a single natural language query, the method comprising:receiving the single natural language query that includes aggregated free-form query information comprising a first section and a second section for requesting data pertaining to computer system elements of a computing system, wherein the second section is appended to the first section via a contingency clause, wherein the computer system elements comprise a plurality of physical resources and/or virtualized resources that are included in the computing system, wherein the aggregated free-form query information is represented as a syntax tree;
converting, using the syntax tree, the first section of the aggregated free-form query information into an original query portion, and the second section of the aggregated free-form query information into a contingency query portion for accessing at least one data set;
accessing, using the original query portion, the at least one data set to obtain result information pertaining to an initial computer system element included in the computing system; and
in response to detecting the contingency clause, using the contingency query portion and the result information returned in response to the original query portion to access the at least one data set to obtain computer system element information as specified in the single natural language query by the contingency clause for at least one descendant element or ancestor element related to the initial computer system element included in the result information, wherein the initial computer system element and each of the at least one descendant element or ancestor element are separate elements of the syntax tree.

US Pat. No. 10,713,251

PUSHING DATA TO A PLURALITY OF DEVICES IN AN ON-DEMAND SERVICE ENVIRONMENT

salesforce.com, inc., Sa...

1. A method for pushing data to a plurality of devices of an organization, comprising:receiving, at a middle tier server between a database system and the plurality of devices, a plurality of requests for data from the database system, the plurality of requests being for two or more of the plurality of devices associated with a first organization, the database system containing data for multiple organizations, including the first organization;
transmitting, by the middle tier server, the plurality of requests in bulk and instructions limiting the query to data associated with the first organization to the database system over a network connection;
receiving, by the middle tier server, results for the plurality of requests from the database system over the network connection, the received results being for every one of the transmitted plurality of requests;
filtering, at the middle tier server, the received results for information relevant to each device of the two or more devices, the filtering being based on:
a profile associated with the corresponding device of the two or more devices, the profile defining a data amount based on the capabilities of the corresponding device including the amount of memory, processing power and device size, and rules to match the relevance of the data to the user of the corresponding device, and
a signal sent from the corresponding device that is used by the middle tier server to determine information relevant to the device, the signal including geographic information related to information on the corresponding device; and
transmitting, by the middle tier server, the filtered results to the two or more devices over a different network connection, without the two or more devices contacting the database system, the two or more devices each receiving filtered results that include the information relevant to each device.

US Pat. No. 10,713,250

DISTRIBUTED DATABASE JOB DATA SKEW DETECTION

eBay Inc., San Jose, CA ...

1. A method comprising:for each of a selected plurality of queries to a distributed database:
determining a duration of a phase of the query;
determining a value of a metric correlated with the duration of the phase; and
determining a relative difference between the duration of the phase and an average duration of the corresponding phases of each of the plurality of queries;
based on the determined durations and the determined values, calculating a correlation level between the metric and the duration of the phase and a maximum relative difference between the average duration and the duration of the phase;
for a particular query, when the correlation level exceeds a threshold and the relative difference exceeds a threshold fraction of the maximum relative difference, classifying the particular query as causing a data skew in the distributed database; and
displaying a message identifying the particular query as causing a data skew in the distributed database.

US Pat. No. 10,713,249

MANAGING SNAPSHOTS AND APPLICATION STATE IN MICRO-BATCH BASED EVENT PROCESSING SYSTEMS

ORACLE INTERNATIONAL CORP...

1. A method for managing snapshots created from a Continuous Query Language (CQL) engine, comprising:receiving, by a computing device, a continuous query;
applying, by the computing device, a Directed Acrylic Graph (DAG) transformation to the continuous query to generate a query plan for the continuous query, wherein the query plan is an ordered set of steps used to access data for processing of the continuous query;
applying, by the computing device, a CQL transformation to the query plan to generate a transformed query plan;
receiving, by a computing device, a micro-batch stream of input events related to an application;
processing, by the computing device, the input events using the CQL engine to generate a set of output events related to the application, wherein the processing comprises: performing, by the CQL engine, incremental computation on each of the input events of the micro-batch stream for the continuous query based at least in part on the transformed query plan; and creating, by the CQL engine, output events for each of the input events of the micro-batch stream, wherein the set of output events comprise the output events for each of the input events of the micro-batch stream;
generating, by the computing device and using a snapshot management algorithm implemented by the CQL engine, a snapshot of a current state of a system based at least in part on the set of output events related to the application;
generating, by the computing device, a first directory structure to access snapshot information associated with the snapshot of the current state of the system;
generating, by the computing device, a second directory structure to generate a list of snapshots associated with the current state of the system; and
determining, by the computing device, based at least in part on the snapshot management algorithm, a process to get, add, or clean the list of snapshots associated with the current state of the system.

US Pat. No. 10,713,248

QUERY ENGINE SELECTION

AtScale, Inc., San Mateo...

1. A method for rule-based query engine selection, the method comprising:identifying at least one data storage environment comprising one or more query engines, the query engines accessed to operate on one or more datasets, and the query engines having one or more query engine attributes;
receiving one or more data statements that correspond to at least one subject dataset from the datasets, the data statements having one or more statement attributes;
selecting a target query engine from the query engines by evaluating one or more of the query engine selection rules subject to at least one of, the statement attributes, or the query engine attributes, selection further comprising:
applying a set of query engine selection rules in order according to a priority, the set of query engine selection rules specific to an owner of the data statements, each query engine selection rule of the set of query engine selection rules indicative of at least one of an execution time, load, responsiveness, availability, usage and memory used; and
eliminating the query engines based on satisfaction of the selection rules until a single selected query engine results, the selected query engine satisfying at least one objective of the applied set of query engine selection rules;
generating one or more data operations from the data statements, at least one of the data operations generated to achieve one or more objectives when accessing the target query engine, the objectives comprising minimization of at least one of, a query execution cost, a query execution time, or an accessed data size, the data operations formatted to be executed on the target query engine; and
executing the data operations on the target query engine to operate over the subject dataset.

US Pat. No. 10,713,247

EXECUTING QUERIES FOR STRUCTURED DATA AND NOT-STRUCTURED DATA

Amazon Technologies, Inc....

1. A system, comprising:a memory to store program instructions which, if performed by at least one processor, cause the at least one processor to perform a method to at least:
receive a query on structured data and not-structured data at a query engine, wherein the structured data is stored according to a pre-defined data model and the not-structured data is not stored according to a pre-defined data model;
generate, by the query engine, a query execution plan for the query that comprises:
one or more stateful operations to apply the query to the structured data; and
stateless operations to apply the query to the not-structured data at one or more remote query processing engines;
send, by the query engine, the stateless operations to the remote query processing engines as part of performing the query execution plan to execute the query on the structured data and not-structured data; and
generate, by the query engine, a result for the query based, at least in part, on:
respective results for the stateless operations received from the remote query processing engines; and
respective results for the stateful operations to apply the query to the structured data; and
return, by the query engine the result for the query.

US Pat. No. 10,713,246

COLUMN BASED DATA ACCESS CONTROLS

SAP SE, Walldorf (DE)

1. A system comprising:a memory storing processor-executable instructions; and
a processor to execute the processor-executable instructions to cause the system to:
receive a query specifying a result set of data from at least one database table;
determine whether at least one column of the at least one database table is subject to a column-based authorization restriction, the column-based authorization restriction to restrict access to the at least one column of the at least one database table being based on a column from a database table other than the least one database table including the at least one column;
modify the query, in an instance it is determined that at least one column of the at least one database table is subject to a column-based authorization restriction, to restrict the result set of data in accordance with the column-based authorization restriction;
execute, in response to the modifying of the query, the modified query;
execute, in an instance it is determined that at least one column of the at least one database table is not subject to a column-based authorization restriction, the query; and
save a record of the result of the execution of one of the modified query and the query in a memory.

US Pat. No. 10,713,245

UTILIZING PERSISTENT AND NON-PERSISTENT CONNECTIONS FOR GENERATING A JOB RESULT FOR A JOB

Splunk Inc., San Francis...

1. A method comprising:establishing a non-persistent connection between a first component of a first virtualized execution environment and a second component of a second virtualized execution environment;
establishing a persistent connection between the second component and a third component;
obtaining, by the second component via the persistent connection, information pertaining to a job from the third component, the job corresponding to a job request generated by the first component;
generating, by the second component, a job result for the job in view of the obtained information received from the third component via the persistent connection; and
transmitting, by the second component to the first component, the job result for the job using the non-persistent connection.

US Pat. No. 10,713,244

CALCULATION ENGINE OPTIMIZATIONS FOR JOIN OPERATIONS UTILIZING AUTOMATIC DETECTION OF FORCED CONSTRAINTS

SAP SE, Walldorf (DE)

1. A method comprising:receiving, at a calculation engine of a database management system, a query invoking a calculation scenario including a hierarchical join, the hierarchical join comprising a plurality of nodes, each of the plurality of nodes corresponding to a data source comprising a join operation or one of a plurality of database partitions;
instantiating, by the calculation engine, the calculation scenario, the instantiating of the calculation scenario optimizing the calculation scenario by at least:
determining, by the calculation engine, whether a cardinality of a first join operation in the hierarchical join is above a threshold, the first join operation operating on a first node comprising a first data source, the first join operation further operating a second node comprising a second data source, and the first join operation combining, based at least on a join attribute, data from the first data source and the second data source;
optimizing, by the calculation engine, the first join operation in response to determining the cardinality of the first join operation is above the threshold, the optimizing of the first join operation comprising:
determining that no attributes other than the join attribute is requested from the first node,
determining whether a static filter is present for the first node, the static filter preventing at least a portion of data from being retrieved from the first data source comprising the first node,
in response to detecting that the static filter is present for the first node, caching, at the first join operation, an indication of the presence of the static filter, the cached indication being reused during optimization of a second join operation that is subordinate to the first node in the hierarchical join, and
in response to determining that the static filter is absent from the first node and that no attributes other than the join attribute is requested from the first node, pruning the first node from the hierarchical join; and
executing, by the calculation engine, the query by at least performing the hierarchical join included in the optimized calculation scenario, the performing of the hierarchical join including performing the optimized first join operation without the first node pruned from the first join operation.

US Pat. No. 10,713,243

PRECOMPILED SQL QUERIES THAT ALLOW FOR DYNAMIC SELECTION OF COLUMNS

salesforce.com, inc., Sa...

1. A computer-implemented method, comprising:determining a query to be directed to a database table that comprises a plurality of table columns, wherein the query is used to retrieve database values for a first subset of one or more table columns in the plurality of table columns, wherein the plurality of table columns includes a second subset of one or more table columns from which no database values are to be retrieved for the query;
setting up one or more runtime column selection variables to identify each table column in the first subset of table columns for data retrieval and to identify each table column in the second subset of table columns not for data retrieval;
dynamically binding the one or more runtime column selection variables to a prepared query statement, wherein the prepared query statement comprises a plurality of single-column query statements joined by one or more interstitial union operators;
wherein each single-column query statement in the plurality of single-column query statements joined by one or more interstitial union operators in the prepared query statement specifies a single-column query directed to a corresponding table column in the plurality of table columns with a corresponding predicate, wherein the corresponding predicate in each such single-column query statement is to be bound at runtime dynamically with a corresponding portion of the one or more runtime column selection variables and is evaluated to be true or false in dependence on whether the corresponding table column in each such single-column query statement is in the first subset of table columns or in the second subset of table columns;
causing the prepared query statement to be executed to retrieve the database values for the first subset of table columns in the database table.

US Pat. No. 10,713,242

ENHANCING PERFORMANCE OF STRUCTURED LOOKUPS USING SET OPERATIONS

International Business Ma...

1. A computer-implemented method for providing answers to questions that do not have a direct relationship established in a database, the computer-implemented method comprising:receiving a training question and a training answer set to the training question;
determining a training question structure of the training question;
determining a training subject in the training question;
determining a plurality of paths in a database that links the training subject to a plurality of answer subsets, wherein an answer subset comprises at least one answer in the training answer set to the training question;
performing a relation scoring analysis on the plurality of answer subsets to determine a set operation and a combination of the answer subsets that yield a highest accuracy score when the set operation is applied to the combination of the answer subsets, wherein the relationship scoring analysis comprises determining a first combination of the answer subsets that yield a first highest accuracy score when a union set operation is applied, determining a second combination of the answer subsets that yield a second highest accuracy score when an intersection set operation is applied, comparing the first highest accuracy score to the second highest accuracy score, setting the first combination of the answer subsets and the union set operation as the set operation and the combination of the answer subsets that yield the highest accuracy score when first highest accuracy score is greater than the second highest accuracy score, and setting the second combination of the answer subsets and the intersection set operation as the set operation and the combination of the answer subsets that yield the highest accuracy score when second highest accuracy score is greater than the first highest accuracy score; and
storing a subset of the plurality of paths corresponding to the combination of the answer subsets that yield the highest accuracy score, the set operation performed on the combination of the answer subsets that yield the highest accuracy score, and the training question structure of the training question for use in providing answers to questions.

US Pat. No. 10,713,241

WEIGHTING AND EXPANDING QUERY TERMS BASED ON LANGUAGE MODEL FAVORING SURPRISING WORDS

International Business Ma...

1. A method implemented by an information handling system that includes a processor and a memory accessible by the processor, the method comprising:receiving a question at a question answering (QA) system that includes a plurality of words comprising a first word and a second word adjacent to the first word;
retrieving a first log likelihood value corresponding to the first word, wherein the first log likelihood value is a derivative of a first probability that the first word resides in an n-gram corpus;
retrieving a second log likelihood value corresponding to a phrase comprising the first word and the second word, wherein the second log likelihood value is a derivative of a second probability that the phrase comprising the first word and the second word resides in the n-gram corpus;
calculating a weighting of the first word based on the first log likelihood value and the second log likelihood value;
in response to determining that the weighting of the first word meets a first threshold:
detecting that the first word is included in a list of removable common words to remove from one or more queries; and
updating the list of removable common words by removing the first word from the list of removable common words;
generating one of the one or more queries based on the question, the updated list of removable common words, and the calculated weighting; and
searching, using the generated query, a corpus managed by the QA system, wherein the searching results in one or more search results.

US Pat. No. 10,713,240

SYSTEMS AND METHODS FOR RAPID DATA ANALYSIS

Interana, Inc., Redwood ...

1. A method for rapid data analysis comprising:receiving and interpreting a first query, wherein interpreting the first query comprises identifying a first set of data shards of a first dataset containing data relevant to the first query; wherein the first dataset is partitioned by a first field;
for a first query pass of the first query, collecting a first data sample from the first set of data shards, wherein collecting the first data sample comprises collecting data from each of the first set of data shards;
for the first query pass, calculating a first result to the first query based on analysis of the first data sample; and
for a second query pass of the first query that uses the first result as input, partitioning a second dataset based on a second field, wherein the second data set contains data identical to the first dataset, wherein the second field is identified by a set of shard partitioning rules, based on the first field; wherein the second field is non-identical to the first field.

US Pat. No. 10,713,239

BLOCKCHAIN-BASED DATA STORAGE AND QUERY METHOD AND DEVICE

Alibaba Group Holding Lim...

1. A computer-implemented method, comprising:receiving, by a blockchain node, a service request, the service request comprising one or more data types and respective service data corresponding to the one or more data types that are stored in a blockchain;
determining a service type and identification information corresponding to the service request;
parsing the service request to obtain each data type of the service request and service data corresponding to each data type;
determining that no relational database has been created to correspond to the service type;
in response to determining that no relational database has been created to correspond to the service type, creating a relational database to correspond to the service type; and
storing, based on a mapping relationship between a data type and service data, the service data that is obtained through parsing in the relational database corresponding to the blockchain node.

US Pat. No. 10,713,238

DATABASE METADATA IN IMMUTABLE STORAGE

Snowflake Inc., San Mate...

1. A database system comprising:at least one processor; and
a memory storing instructions that cause the at least one processor to perform operations comprising:
storing table metadata for a current version of a database table in a current version set of table-metadata files in storage;
detecting a modification to the current version of the database table, the modification resulting in a new version of the database table being stored in a new version set of table-data files, the new version set of the set of table-data files being different than a current version set of table-data files;
responsive to the detecting, generating and storing in the storage a new version set of table-metadata files, the new version set of table-metadata files comprising table metadata for the new version of the database table; and
consolidating the new version set of table-metadata files by generating a second new version set of table-metadata files, the second new version set of table-metadata files comprising metadata absent of information from files that have been deleted.

US Pat. No. 10,713,237

AUTOMATICALLY CORRECTING INVALID SCRIPTS IN WEB APPLICATIONS

INTERNATIONAL BUSINESS MA...

1. A method for correcting an invalid script in a web application, comprising:determining an invalid reference in an invalid script;
determining a storage location in a database corresponding to the invalid reference based on a data relationship mapping, in which the data relationship mapping indicates the correspondence between the reference and a storage location in the database;
querying an up-to-date value at the storage location;
determining the queried up-to-date value to be the correct value of the invalid reference;
searching a response corresponding to the invalid reference using the determined correct value to determine the location of the correct value in the response; and
creating a data correlation for the invalid reference according to the determined location and its context and updating an invalid data correlation corresponding to the invalid reference with the created data correlation.

US Pat. No. 10,713,236

SYSTEMS AND METHODS FOR ANALYSIS OF DATA STORED IN A LARGE DATASET

Panorama Software Inc., ...

1. A computer implemented method for detecting at least one anomaly in a dataset, comprising:managing a dataset including a plurality of data entities each including at least one value;
receiving a semantic model that defines associations between two or more data entities;
forming a plurality of multi dimensional data instances, each multi dimensional data instance formed from at least one of a permutation and a combination of a set of data entities from the plurality of data entities according to the semantic model, and includes at least one new calculated value calculated from at least some of said set of data entities;
analyzing the multi dimensional data instances to detect at least one anomalous value, the anomalous value representing a statistically significant deviation according to a deviation requirement, of one or more values from a set of values of the multi dimensional data instances; and
providing the detected at least one anomalous value;
wherein forming the plurality of multi dimensional data instances comprises selecting the set of data entities from the dataset according to a ranking score assigned to respective data entities;
further comprising creating a combination and/or permutation and/or aggregation of data entities according to a ranking requirement.

US Pat. No. 10,713,235

SYSTEMS AND METHODS FOR EVALUATING AND STORING DATA ITEMS

Veritas Technologies LLC,...

1. A computer-implemented method for evaluating and storing data items, at least a portion of the method being performed by a computing device comprising at least one processor, the method comprising:receiving a data item to be evaluated and stored within a data item repository;
evaluating the data item by comparing the data item with a set of rules used to determine properties of data items;
appending, to a data structure that contains the data item and is separate from data structures that contain other data items stored within the data item repository, a metadata tag that indicates:
at least one determined property of the data item; and
contextual details about a state of at least one rule used to determine the property at a point in time at which the rule was used;
storing, within the data item repository, the data item with the appended metadata tag; and
after the data item has been stored, updating the set of rules used to determine properties of data items by:
searching metadata tags within the data item repository to identify a number of data items that have been evaluated by the rule within a certain period of time; and
determining whether to remove the rule from the set of rules based at least in part on whether the number of data items is below a threshold number.

US Pat. No. 10,713,234

DATA REPAIR WITHIN PRODUCTIVE SYSTEM

SAP SE, Walldorf (DE)

1. A device for securely modifying corrupt data that is stored in a productive system, the device comprising:a processor configured to
receive a request to modify one or more table entries of a base table stored in a productive environment of a productive system,
generate a child table corresponding to the base table within a secure environment of the productive system,
modify the one or more table entries from the base table,
store the modified table entries in the child table, and
execute one or more operations on the child table within the secure environment to determine if the one or more modified table entries repair the base table; and
an output configured to output a determined result of the one or more operations performed on the child table to a user interface shown on a display device.

US Pat. No. 10,713,233

INFORMATION MANAGEMENT SYSTEM

Kabushiki Kaisha Toshiba,...

1. An information management system comprising:an input support system for inputting, in installation work of an apparatus, an electronic document including a work report concerning the installation work by voice a production management database storing a work schedule;
an electronic document database storing the work report;
a progress information database storing progress information; and
a computer processor programmed to:
set an access authority for viewing or updating for each of the databases including:
setting a first access authority to a first terminal so that the first terminal can access the production management database, the electronic document database, and the progress information database;
setting a second access authority to a second terminal so that the second terminal can access the progress information database and the electronic document database but cannot access the production management database; and
setting a third access authority to a third terminal so that the third terminal can access the progress information database but cannot access the production management database and the electronic document database,
transfer, among the databases, information stored in each of the databases including:
transferring, in accordance with a storage of the work report from the second terminal to the electronic document database, the work schedule from the production management database to the progress information database; and
transferring a work result included in the work report from the electronic document database to the progress information database,
create the progress information using the transferred work schedule and the transferred work result, and
store the progress information in the progress information database, wherein the input support system includes:
a voice input unit to which voice is input; and
a computer processor programmed to:
recognize the voice input to the voice input unit, and
output character information based on recognized content of the voice to the electronic document,
the electronic document, to which the character information is output, is stored in the electronic document database,
the computer processor of the input support system is programmed to understand an intention included in the recognized content of the voice,
the input support system further includes an analysis information database in which information necessary for morpheme analysis processing, syntax analysis processing, and semantic analysis processing executed in the understanding the intention is stored,
the computer processor of the input support system is programmed to:
correct the recognized content of the voice to conform to the intention; and
output the character information based on the corrected the recognized content of the voice to the electronic document,
the computer processor of the input support system is programmed to generate synthesized voice corresponding to the character information, and
the input support system further includes a voice output unit configured to output the synthesized voice.

US Pat. No. 10,713,232

EFFICIENT DATA PROCESSING

Computational Systems, In...

1. A method for improving the operation of a computer by transferring data from an SQL database in a storage unit to a memory, the method comprising the steps of:copying the data from the SQL database to a binary file in the storage unit, the binary file having a data structure and a data type,
configuring within the memory a data file having the data structure and the data type, and
copying the binary file in the storage unit to the data file in the memory with a single read/write operation,
wherein reading the data file to locate desired data, when records of the data file are unsorted, comprising:
reading through the entire data file only once to find record positions for data containing predetermined data characteristics,
creating a first pointer table in the memory, the first pointer table including a single record position for a first instance of each of the predetermined data characteristics within the data file,
creating a second pointer table in the memory, the second pointer table including, in association with the record position for the first instance of each of the predetermined data characteristics, a subsequent record position for a next subsequent instance of each of the predetermined data characteristics within the data file, and
reading the data file starting at the record position in the first pointer table that corresponds to a desired one of the predetermined data characteristics, and if the data in the record position does not contain the desired data, iteratively reading the data file at the record position associated with the next subsequent instance in the second pointer table, until the desired data is found.

US Pat. No. 10,713,231

SYSTEMS AND METHODS FOR EVALUATING DATA INCLUDED IN DISPARATE DATABASES AND/OR DATA STRUCTURES

MASTERCARD INTERNATIONAL ...

11. A computer-implemented method for use in evaluating data included in disparate data structures, the method comprising:receiving, as an input, an identification of a batch file, the batch file including: a first aggregation job and a second aggregation job, the batch file, a first target file associated with the first aggregation job, and a second target file associated with the second aggregation job, wherein the first target file associates the first aggregation job with a first database and a date range, and wherein the second target file associates the second aggregation job with a second database different than the first database, the first database including a different type of file system and/or platform than the second database; and
executing the first and second aggregation jobs, wherein executing the first and second aggregation jobs comprises:
requesting a first aggregate of a first data in a first data structure of the first database based on the date range;
receiving the first aggregate of the first data specific to the date range;
loading the first aggregate in an aggregate data structure in a memory of a computing device;
requesting a second aggregate of second data in a second data structure of the second database based on the date range, wherein at least a portion of said second data is duplicative of said first data;
receiving the second aggregate of the second data specific to the date range;
loading the second aggregate in the aggregate data structure in the memory of the computing device; and
comparing the first and second aggregate in the aggregate data structure to verify whether the first data and the second data match.

US Pat. No. 10,713,230

CUSTOM ENTITIES AND FIELDS IN A MULTI-TENANT DATABASE SYSTEM

salesforce.com, inc., Sa...

1. A method comprising:defining, at a server system that is communicatively coupled to at least one storage device, a multi-tenant data structure in the at least one storage device including a data table having a plurality of data columns and a plurality of rows, wherein at least two of the rows of the data table are each specific to different tenants and store data for a corresponding one of the different tenants;
receiving, at the server system from a first tenant a first definition for a first data column of the plurality data columns, the first definition designating a first data field of the first data column for storing data that is of a first data type,
receiving, at the server system from a second tenant a second definition for the data column, the second definition designating a second data field of the first data column for storing data that is of a second data type, wherein the second data type is different than the first data type;
storing in metadata of the multi-tenant data structure, at the at least one storage device by the server system, the first definition for the first data column and the second definition for the first data column by:
storing, in the metadata at the at least one storage device, an identifier of the first tenant in association with an identifier of the first data column and an identifier of the first data type, and
storing, in the metadata at the at least one storage device, an identifier of the second tenant in association with the identifier of the first data column and an identifier of the second data type;
receiving, by the server system from the first tenant, a first data value of the first data type to be stored in the first data column;
storing, at the at least one storage device by the server system, the first data value of the first data type received from the first tenant using the first data field of the first data column;
receiving, by the server system from the second tenant, a second data value of the second data type to be stored in the first data column; and
storing, at the at least one storage device by the server system, the second data value of the second data type received from the second tenant using the second data field of the first data column.

US Pat. No. 10,713,229

INDEX GENERATING DEVICE AND METHOD, AND SEARCH DEVICE AND SEARCH METHOD

NEC CORPORATION, Tokyo (...

1. An index generating device configured to generate an index in which a plurality of nodes each of which includes at least one entry that indicates a datum to be indexed are hierarchized, the index generating device comprising:a memory storing instructions; and
at least one processor configured to process the instructions to implement:
an index generating unit configured to, using a degree of approximation between data computed by a similarity computation unit, generate the index that includes a lower order node and a higher order node, the higher node including an entry, the entry having a link relation with the lower order node and indicating a representative datum, a degree of approximation between the representative datum and a datum being indicated by an entry in the lower order node, and the degree of approximation between the representative datum and the datum indicated by the entry in the lower order node being greater than or equal to a degree of approximation threshold value appended to the link relation; and
a threshold setting unit configured to set the degree of approximation threshold value to a value that increases with descent in hierarchy,
wherein the threshold setting unit is further configured to set, based on a determination that a number of entries of the higher order node exceeds a predetermined entry threshold value, as a new degree of approximation threshold value, one of:
a value obtained by recursive division between the greatest degree of approximation and an already set degree of approximation threshold value, or
a value obtained from the degree of approximation of the representative datum with respect to another entry included in the higher order node.

US Pat. No. 10,713,228

GENERATING AND ACCESSING A DATA TABLE

International Business Ma...

1. A method of using an index shared between a plurality of tables to access a data sharing space (DSS) storing a set of rows from a base table having a plurality of rows with stored data, the method comprising:identifying, in response to a first query for a first table of the plurality of tables, first data values of the index, wherein the index is a data sharing space directory (DSSD) that is configured with index values that map the locations of the set of rows stored in the DSS;
identifying a first set of individual binary bit values using the first query;
indicating the first data values based on the first set of individual binary bit values;
retrieving, using index elements corresponding to the first data values, a first set of rows from the DSS;
identifying, in response to a second query for a second table of the plurality of tables, second data values and at least some of the first data values of the index;
identifying a second set of individual binary bit values using the second query;
indicating the second data values and the at least some of the first data values based on the second set of individual binary bit values;
retrieving, using the index elements corresponding to the second data values and the at least some of the first data values, a second subset of the set of rows from the DSS;
checking the first table for a share parameter in response to the first query;
checking the second table for a share parameter in response to the second query; and
applying the second query to the second subset of the set of rows.

US Pat. No. 10,713,227

EVENT-RELATED MEDIA MANAGEMENT SYSTEM

Uberfan, LLC, Minneapoli...

1. A method of generating intelligent media content, the method comprising:storing event-related data associated with a plurality of events including a particular event in at least one computer readable storage device, the event-related data including event segment data identifying segments of the events including a particular segment of the event;
receiving media content items using at least one computing device, wherein the at least one computing device comprises a plurality of computing devices coupled together, the media content items including a particular media content item;
identifying contextual information associated with the particular media content item using the at least one computing device, wherein the contextual information comprises at least one of: data associated with metadata of the particular media content item, and data associated with content of the particular media content item;
determining that the particular media content item relates to the particular event of the plurality of events based at least in part on the contextual information, using the at least one computing device;
automatically tagging the particular media content item with the particular event using the at least one computing device;
comparing the contextual information to the event segment data for the event to identify a relationship between the particular media content item and the particular segment of the event using the at least one computing device;
automatically tagging the particular media content item with the particular segment of the event as a result of the identified relationship using the at least one computing device;
generating and storing a text-based contextual description for the particular media content item based at least in part on one or more of the particular event and the particular segment of the event;
receiving a second particular media content item of the media content items;
identifying second contextual information associated with the second particular media content item;
determining that the second particular media content item relates to the particular event of the plurality of events based at least in part on the second contextual information;
automatically tagging the second particular media content item with the particular event;
comparing the second contextual information to the event segment data for the event to identify a relationship between the second particular media content item and the particular segment of the event;
automatically tagging the second particular media content item with the particular segment of the event, wherein the tagging of the particular segment of the event to the particular media content item and to the second particular media content item indicates a relationship between the particular media content item and the second particular media content item; and
providing access to the particular media content item and the second particular media content item based at least in part on the relationship between the particular media content item and the second particular media content item in response to a single query received from a user.

US Pat. No. 10,713,226

MANAGING DATA USING ARCHIVING

Workday, Inc., Pleasanto...

1. A system for archiving, comprising:an active memory;
an archive memory;
an interface configured to:
receive an indication to archive an object in the active memory, wherein an object tree is comprised of a plurality of objects, wherein the plurality of objects of the object tree are stored in the active memory, wherein a subtree of the object tree comprises the object and a subset of the plurality of objects, wherein the object has a relation to an other object in the active memory, wherein the object tree comprises the other object and the subtree does not comprise the other object, wherein the object is an root object of the subtree and the subset of the plurality of objects include one or more member objects of the subtree; and
a processor configured to:
in response to receiving the indication to archive the object prepare the object to be archived, wherein to prepare the object to be archived, the processor is configured to:
flag the object as archive prepared by setting an attribute bit associated with the object in an object data table;
monitor the object for accesses, comprising determining a number of object accesses associated with the object; and
determine a number of object accesses associated with the object that do not have archive permission;
archive in the archive memory the object and the subset of the plurality of objects based on the determined number of object access associated with the object and the determined number of object accesses associated with the object that do not have archive permission; and
maintain the relation between the other object stored in the active memory and the archived object stored in the archive memory, wherein to maintain the relation between the other object stored in the active memory and the archived object stored in the archive memory, the processor is configured to enable the archived object stored in the archive memory to be accessed from the other object stored in the active memory by traversing the object tree stored in the active memory from the other object to the archived object stored in the archive memory.

US Pat. No. 10,713,225

CONTENT DATABASE GENERATION

PEARSON EDUCATION, INC., ...

1. A system for alerting a user device when an objective is mastered according to a piecewise Gaussian distribution updated according to a Bayesian method, the system comprising:a user device;
a server to perform actions of:
receiving a response from the user device, the response comprising an identity of a user;
receiving user attribute data, wherein the user attribute data comprises a piecewise Gaussian distribution model of a user skill level and a user error value;
determining a first mastery level of the user from the user skill level and the user error value;
identifying a next objective, wherein:
the next objective is an aggregation of data packets; and
the aggregation of data packets is at a second mastery level,
wherein the second mastery level is more difficult than the first mastery level;
providing a data packet from the aggregation of data packets to the user via the user device;
receiving a response from the user via the user device, wherein the response indicates the user has mastered the next objective;
updating the user attribute data according to a Bayesian method, wherein the update to the user attribute data updates the piecewise Gaussian distribution model; and
generating and provide an alert to the user device indicating mastery of the next objective, wherein the alert comprises code to direct the user device to provide an indicator of the alert.

US Pat. No. 10,713,224

IMPLEMENTING A CONTINUITY PLAN GENERATED USING SOLUTION DATA MODELING BASED ON PREDICTED FUTURE EVENT SIMULATION TESTING

BANK OF AMERICA CORPORATI...

1. A system for implementing a continuity plan generated using solution data modeling based on predicted future event simulation testing, the system comprising:one or more memory devices having computer readable code stored thereon; wherein the one or more memory devices comprises a plurality of databases comprising a model database and a plan database;
one or more processing devices operatively coupled to the one or more memory devices, wherein the one or more processing devices are configured to execute the computer readable code to:
generate one or more solution data models comprising a plurality of asset systems and a plurality of users, wherein each of the plurality of asset systems is associated with at least one user of the plurality of users and wherein at least a first of the plurality of asset systems is associated with at least a second of the plurality of asset systems;
store the one or more solution data models in the model database;
identify, based at least in part on historical event data that indicates a relationship among at least one of a plurality of historical events and at least one of the plurality of asset systems, a potential event associated with at least a first asset of the plurality of asset systems, wherein the potential event has matching characteristics of at least one of the plurality of historical events;
extract a first solution data model associated with the first asset from the model database;
identify one or more relationships associated with the first asset based on the extracted first solution data model, wherein the one or more relationships are communication links associated with the first asset and at least one of one or more servers, one or more applications, and one or more users;
formulate a continuity plan for the potential event based on the one or more relationships associated with the first asset; and
test the continuity plan by creating a simulation of the potential event and implementing the continuity plan for the simulated potential event.

US Pat. No. 10,713,223

OPPORTUNISTIC GOSSIP-TYPE DISSEMINATION OF NODE METRICS IN SERVER CLUSTERS

SALESFORCE.COM, INC., Sa...

1. A method for dissemination of server metrics in a cluster of server nodes and a plurality of clients in communication with the cluster of server nodes, comprising:receiving, at a first server node in the cluster of server nodes, client stored metric information from a client of the plurality of clients, the client stored metric information being piggybacked onto a read or write (R/W) request from the client;
reconciling, at the first server node, the client stored metric information with server stored metric information that is stored by the first server node;
generating first updated metric information;
transmitting, by the first server node, the first updated metric information to the client, the first updated metric information being piggybacked onto a R/W reply from the first server node;
receiving, at a second server node in the cluster of server nodes, the client stored metric information from the client, the client stored metric information being piggybacked onto a R/W request from the client, the client stored metric information having been updated based on the first updated metric information;
reconciling, at the second server node, the client stored metric information with server stored metric information that is stored by the second server node;
generating second updated metric information; and
transmitting, by the second server node, the second updated metric information to the client, the second updated metric information being piggybacked onto a R/W reply from the second server node.

US Pat. No. 10,713,222

CONVERSION OF DATA FOR OPERATING SYSTEMS

1. A method, comprising:receiving, by a hardware processor, a request for a file system object, the request for the file system object specifying a write access, a hardware component, and a software application;
determining, by the hardware processor, a software driver associated with the hardware component;
retrieving, by the hardware processor, a block of data associated with the write access; and
converting, by the hardware processor, the block of data from a format used by the software application into a different format used by the software driver;
wherein the block of data is converted for the write access specified by the request for the file system object.

US Pat. No. 10,713,221

DUAL LAYER DEDUPLICATION FOR A FILE SYSTEM RUNNING OVER A DEDUPLICATED BLOCK STORAGE

EMC IP Holding Company LL...

1. A method for dual layer deduplication for a file system running over a deduplication block storage system, comprising:accessing a file by a file system driver of the file system, the file stored as one of a plurality of files in the file system;
breaking the file down into multiple blocks;
generating chunks from the blocks, wherein for at least one of the chunks adding a trail of zeros until a size of a respective one of the chunks is a multiple of a block size of the deduplication block storage system, and
performing, by the deduplication block storage system, deduplication on the chunks and compression on deduplicated chunks having the trailing zeros;
wherein the file includes data and metadata that describes a structure of the data, the metadata for each file including a list of locations where the file is chunked.

US Pat. No. 10,713,220

INTELLIGENT ELECTRONIC DATA CAPTURE FOR MEDICAL PATIENT RECORDS

Koninklijke Philips N.V.,...

1. A device for editing an electronic medical record (EMR), the device comprising:a mobile device including
a touch-sensitive display,
a communication link, and
at least one electronic processor programmed to cause the mobile device to perform an EMR data entry method, wherein the at least one electronic processor is configured to:
display a medical document on the touch-sensitive display,
overlay an EMR data entry fillable form having user-editable fields on the touch-sensitive display as a partially transparent overlay superimposed on the displayed medical document,
display a visible link between text content in the displayed medical document and the user-editable field of the overlaid EMR data entry fillable form into which the text content is to be transferred,
transfer the text content from the displayed medical document into at least one of the user-editable fields of the overlaid EMR data entry fillable form, and
after filling out the overlaid EMR data entry fillable form, upload at least content of the user-editable fields of the filled out EMR data entry fillable form to the EMR via the wireless communication link.

US Pat. No. 10,713,219

METHODS AND APPARATUS FOR DYNAMIC IMAGE ENTRIES

Yearbooker, Inc., New Yo...

1. An image generating apparatus for generating an interactive communication based upon a static replication of a hardcopy, the apparatus comprising:an image capture device for generating digital image data representative of a plurality of disparate pages of a hardcopy volume, wherein each disparate page of the plurality of disparate pages memorializes a designated page of the hardcopy volume as static image data;
a server for post processing the digital image data representative of a plurality of pages of the hardcopy volume, said server comprising a processor in logical communication with the image capture device and in logical communication with a smart device via a digital communications network; and
executable software stored on the server and executable on demand, the executable software operative with the processor to cause the server to:
receive the static image data memorializing a first page of the plurality of disparate pages of the hardcopy volume;
associate a set of Cartesian Coordinates with specific segregated spatial areas of the static image data of the first page of the plurality of disparate pages of the hardcopy volume;
receive from the smart device operated by a first user the set of Cartesian Coordinates;
receive from the smart device operated by the first user and via the digital communications network an identification of the first user;
receive from the smart device operated by the first user and via the digital communications network, a GPS position;
associate a weather condition with the GPS position on a date of receipt of the receipt of the GPS position;
generate a dynamic image entry based upon the weather condition associated with the GPS position as a memorybooker entry, the dynamic image entry comprising a moving animation;
receive from the smart device operated by the first user a designation of a recipient, wherein the recipient is a second user;
generate a memorybooker interface comprising the dynamic image entry placed over the static image of the first page of the plurality of disparate pages of the hardcopy;
transmit to a smart device operated by a second user, a second user interface comprising a notification that the memorybooker entry has been received from the first user and an interactive control functional operative to transmit an indication generated by the second user, the interactive control accepting or rejecting the memorybooker entry;
receive from the smart device operated by the second user an indication accepting the memorybooker entry; and
based upon receipt of the indication accepting the memorybooker entry, transmit the memorybooker entry to the smart device operated by the second user comprising the media entry designated for the second user by the first user.

US Pat. No. 10,713,218

SYSTEM AND METHOD TO OPTIMALLY APPLY LOCAL RETENTION IN A REMOTE REPOSITORY

International Business Ma...

1. A system, comprising:one or more computers programmed for:
storing one or more content items and one or more hold anchors in at least one repository;
storing one or more tracking objects and one or more representational anchor objects in at least one database system, wherein each of the tracking objects represents one of the content items and each of the representational anchor objects represents one of the hold anchors;
using a first one of the hold anchors for placing one or more holds on one or more of the content items in the repository for a first defined period of time, and representing and tracking the holds using a first one of the representational anchor objects and one or more of the tracking objects in the database system for the first defined period of time;
when the first defined period of time expires, using a second one of the hold anchors for placing the holds on the one or more of the content items in the repository system for a second defined period of time, and representing and tracking the holds using a second one of the representational anchor objects and the one or more of the tracking objects in the database system for the second defined period of time;
wherein each of the holds are placed only through the first or second one of the hold anchors and represented by the first or second one of the representational anchor objects; and
recovering from a failure of the repository or database system by performing the steps of:
(1) in the database system, locating one of the representational anchor objects with a latest start time;
(2) in the repository, finding the hold anchors that have a timestamp later than the latest start time;
(3) in the repository, finding the content items that have been placed on one of the holds for the hold anchors found in step (2);
(4) in the database system finding the tracking objects that represent the content items found in step (3);
(5) in the database system, performing a fixup on the representational anchor objects for the tracking objects found in step (4), if the tracking objects are associated with a different one of the representational anchor objects, wherein the fixup is applied so that the representational anchor objects on the database system agree with the hold anchors on the repository;
(6) in the database system, adding the tracking objects found in step (4) to a set B, if the tracking objects represent the content items that have been placed on one of the holds;
(7) in the repository, releasing or tracking the content items that have been placed on one of the holds, for the tracking objects found in step (4), if the tracking objects and the representational anchor objects indicate that the content items are not on one of the holds;
(8) in the repository, optionally removing the hold anchors that do not have corresponding representational anchor objects in the database system;
(9) in the database system, finding the tracking objects that represent the content items that have been placed on one of the holds due to any of the hold anchors found in step (2) and then adding the tracking objects to a set A; and
(10) in the database system, determining the tracking objects in a set C, wherein the set C=set A?set B; and (11) in the repository, placing one of the holds on the content items represented by the tracking objects in the set C.

US Pat. No. 10,713,217

METHOD AND SYSTEM TO MANAGING PERSISTENT STORAGE USING PERFECT HASHING

EMC IP Holding Company LL...

1. A method for managing persistent storage, the method comprising:generating a perfect hash function (PHF) using a snapshot for a plurality of files stored in the persistent storage;
populating a bit vector using the PHF and a plurality of segment references to obtain a populated bit vector, wherein each of the plurality of segment references is associated with at least one candidate file of a plurality of candidate files and wherein the plurality of candidate files is a subset of the plurality of files;
updating the bit vector using the PHF and a second plurality of segment references to obtained an updated bit vector, wherein each of the second plurality of segment references is associated with at least one non-candidate file of a plurality of non-candidate files and wherein the plurality of non-candidate files is a second subset of the plurality of files;
making a determination that a projected freed amount of space in the persistent storage is below a threshold amount, wherein the projected freed amount of space is determined using the updated bit vector; and
performing an action based on the determination.

US Pat. No. 10,713,216

USING RELATIVE GENERATION NUMBERS TO DEDUPLICATE FILE SYSTEM EVENTS

EMC IP Holding Company LL...

1. A method comprising:receiving a set of change notify requests received from a set of clients, wherein change notify requests are associated with at least one target file or target directory;
generating a set of user space filter buffers, wherein user space filter buffers are associated with change notify requests;
generating a hash table to store event entries wherein each event entry includes at least an event logical inode number (“LIN”), a parent LIN, an event type, and a generation number;
maintaining a hash table generation number associated with the hash table;
adding event entries to subsets of user space filters based on the event LIN associated with the event entry; and
notifying clients associated with the subset of user space filter buffers.

US Pat. No. 10,713,215

ALLOCATING NON-CONFLICTING INODE NUMBERS

International Business Ma...

1. A method for allocating non-conflicting inode numbers between files generated at a first location and files generated at a second location, the method comprising:providing an inode number allocation rule table comprising an inode number allocation rule column and an allocation status column, the inode number allocation rule column listing a plurality of inode number allocation rules for generating unique inode numbers for files associated with the first location, the second location, and an unassigned location, wherein the allocation status column indicates an assigned status for each inode number allocation rule of the plurality of inode number allocation rules that are assigned to one of the first location and the second location and an unassigned status for each inode number allocation rule of the plurality of inode number allocation rules that are not yet assigned to one of the first location and the second location, wherein the inode number allocation rule table includes at least one inode number allocation rule having the unassigned status, wherein the unassigned status indicates an availability of the at least one inode number allocation rule for assignment to one of the first location and the second location, and wherein the first location is on a first server and the second location is on a second server;
generating a fileset at the first location comprising:
referencing the inode number allocation rule table to identify the at least one inode number allocation rule having the unassigned status;
assigning the at least one inode number allocation rule having the unassigned status to the fileset at the first location;
changing, in the allocation status column of the inode number allocation rule table, the unassigned status of the at least one inode number allocation rule to the assigned status;
registering, in the inode number allocation rule table, information associated with the fileset comprising at least one of a fileset ID, a mount point, and an identification for the first location; and
generating a file at the first location comprising:
determining the fileset within which to generate the file; and
allocating an inode number for the file based on the assigned inode number allocation rule associated with the determined fileset.

US Pat. No. 10,713,214

HARDWARE ACCELERATOR FOR OUTER-PRODUCT MATRIX MULTIPLICATION

HABANA LABS LTD., Caesar...

1. Computational apparatus, comprising:a systolic array of processing elements arranged in a grid of rows and columns, each processing element comprising a multiplier and first and second accumulators and being configured such that in each of a sequence of processing cycles, the processing elements perform the following steps concurrently:
the processing elements in a first row of the array receive a first vector of first operands, while the processing elements in a first column of the array receive a second vector of second operands;
each processing element, except in the first row and first column, receives the first and second operands from adjacent processing elements in a preceding row and column of the array, respectively, multiplies the first and second operands together to generate a product, and accumulates the product in the first accumulator; and
each processing element passes a stored output data value from the second accumulator to a succeeding processing element along a respective column of the array, receives a new output data value from a preceding processing element along the respective column, and stores the new output data value in the second accumulator; and
synchronization logic, which is coupled to load a succession of the first and second vectors into the first row and first column of the array, and upon completion of processing of the succession by the array, to trigger the processing elements to transfer respective data values from the first accumulator to the second accumulator for output from the array.

US Pat. No. 10,713,213

SYSTEMS AND METHODS FOR MULTI-ARCHITECTURE COMPUTING

Intel Corporation, Santa...

1. A computing device, comprising:a processor system including a first processing core having a first instruction set architecture (ISA) and a second processing core having a second ISA different from the first ISA;
a memory device coupled to the processor system, wherein a first binary representation of a program and a second binary representation of the program are stored as a multi-architecture binary executable in the memory device, and the first binary representation and the second binary representation utilize at least one data structure compatible with both the first ISA and the second ISA;
a dynamic loader to operate on the processor system to, when the first processing core is to run the program, selectively load the first binary representation to run the program with the first processing core;
scheduling logic to operate on the processor system to halt execution of the program by the first processing core and start execution of the program by the second processing core;
checkpointing logic to record a state of the program executing on the first processing core and to provide the state to the second processing core so that the program can be halted on the first processing core and resumed on the second processing core; and
unwinding logic to cause a program stack of the program to unwind to a previous function call prior to resumption of execution of the program by a second processing core.

US Pat. No. 10,713,212

MOBILE REMOTE DIRECT MEMORY ACCESS

MICROSOFT TECHNOLOGY LICE...

13. A computing device configured for operations which are remote from a local multi-purpose computerized tool, comprising:one or more processors;
an interface to a fifth generation (5G) network;
one or more non-transitory computer-readable memories configured for remote direct memory access (RDMA) from a local multi-purpose computerized tool, and further configured to store instructions which, when executed by the one or more processors, cause the remote computing device to:
receive RDMA requests from the local multi-purpose computerized tool to access the memories over the 5G network,
provide access to data stored in the memories to the local multi-purpose computerized tool over the 5G network,
wherein the provided data repurposes the local multi-purpose computerized tool from an initial purpose to a subsequent purpose, and
wherein the local multi-purpose computerized tool is initialized and configured for operation using the provided data.

US Pat. No. 10,713,211

PRE-REGISTERING MEMORY REGIONS FOR REMOTE DIRECT MEMORY ACCESS IN A DISTRIBUTED FILE SYSTEM

Red Hat, Inc., Raleigh, ...

1. A method comprising:pre-registering, by at least one processing device at a client device, multiple input/output (IO) buffers comprising memory regions at the client device for a remote direct memory access (RDMA) interface at the client device, wherein the client device provides an application executed by the client device with access to a distributed file system comprising multiple server devices using the RDMA interface, and wherein the IO buffers are pre-registered during initialization of the RDMA interface prior to providing the application with access to the distributed file system using the RDMA interface;
receiving a request to access a file in the distributed file system from the application at the client device;
responsive to determining that data of the file has been designated for caching, designating a first IO buffer among the IO buffers as a cache for the data from the file; and
receiving the data for the file in the first IO buffer from the distributed file system using the RDMA interface.

US Pat. No. 10,713,210

DISTRIBUTED SELF-DIRECTED LOCK-FREE RDMA-BASED B-TREE KEY-VALUE MANAGER

MICROSOFT TECHNOLOGY LICE...

1. A system, comprising:a plurality of networked computing devices in communication via remote direct memory access-enabled network interface controllers;
a dynamic B-Tree based key-value store comprising nodes distributed across two or more of the networked computing devices, each node further comprising a plurality of key-value/pointer pairs;
a plurality of the networked computing devices concurrently performing self-directed lock-free reads of the key-value store;
a plurality of the networked computing devices concurrently performing self-directed lock-free writes to particular memory locations of the key-value store; and
each lock-free write being performed via a combination of a remote direct memory access-based compare and swap operation to reserve one of the particular memory locations of the key-value store by modifying a reservation bitmap via the remote direct memory access-based compare and swap operation followed by a remote direct memory access-based write to that reserved memory location, and upon successful completion of the remote direct memory access-based write to the reserved memory location, another remote direct memory access-based compare and swap operation to further modify the reservation bitmap to indicate that the reserved memory location is available.

US Pat. No. 10,713,209

RECALIBRATION OF PHY CIRCUITRY FOR THE PCI EXPRESS (PIPE) INTERFACE BASED ON USING A MESSAGE BUS INTERFACE

Intel Corporation, Santa...

1. An apparatus comprising:physical layer (PHY) circuitry;
a memory to implement a message bus register, wherein a set of control and status signals are mapped to bits of the message bus register, and the set of control and status signals comprises a recalibration request signal mapped to a particular one of the bits of the message bus register; and
an interface to couple to a controller, wherein the interface comprises a PHY Interface for the PCI Express (PIPE)-based interface, and the interface comprises:
a set of data pins comprising transmit data pins to send data to the controller and receive data pins to receive data from the controller;
a particular set of pins to implement a message bus interface, wherein a write command is to be received from the controller over the message bus interface to write a value to the particular bit; and
recalibration circuitry to perform a recalibration of the PHY circuitry based on the value written to the particular bit.

US Pat. No. 10,713,208

REMOTELY POWERED, MULTISITE SENSING SYSTEM WITH A SHARED, TWO-WIRE BUS FOR POWER AND COMMUNICATION

Senseonics, Incorporated,...

12. A method comprising:using a first sensor of a sensing system to generate a first data signal;
using a second sensor of the sensing system to generate a second data signal, wherein the second sensor and the first sensor are spatially separated;
using a shared bus of the sensing system to provide the first and second data signals from the first and second sensors to an interface device of the sensing system, wherein the shared bus is connected to the interface device, the first sensor, and the second sensor; and
using the interface device to convey the first and second data signals to a transceiver external to the sensing system.

US Pat. No. 10,713,207

USB TO SYNCHRONOUS SERIAL INTERFACE WITH EXTERNAL CLOCK SIGNAL

Venturi, LLC, Huntsville...

1. An apparatus, comprising:an application-specific integrated circuit (ASIC) that is configurable in a multi-protocol generic mode and in an adaptive clock mode, wherein the ASIC is configured to:
implement a multi-protocol generic command processor in the multi-protocol generic mode where the ASIC is operable to be commanded so as to execute a generic bus command that converts between a Universal Serial Bus (USB) protocol and any commanded one of a plurality of synchronous serial protocols in the multi-protocol generic mode;
generate an internally generated clock signal;
synchronize the internally generated clock signal in accordance with an externally generated clock signal in the adaptive clock mode;
synchronize the execution of the generic bus command with the internally generated clock signal in the adaptive clock mode so that the ASIC thereby synchronizes the execution of the generic bus command in accordance with the externally generated clock signal; and
a computer device configured to communicate with the ASIC in accordance with the USB protocol, wherein the computer device is configured to set the ASIC to operate in the multi-protocol generic mode and in the adaptive clock mode, and to issue the generic bus command to the ASIC when the ASIC has been set to operate in the multi-protocol generic mode and in the adaptive clock mode.

US Pat. No. 10,713,205

UNIVERSAL SERIAL BUS (USB) DISCONNECTION SWITCH SYSTEM, COMPUTER PROGRAM PRODUCT, AND METHOD

DIGITAL 14 LLC, Abu Dhab...

1. A computer program product comprising computer executable instructions stored on a non-transitory computer readable medium that when executed by a processor instruct the processor to:determine that a USB port integrated with a computing device is in electrical communication with at least one hardware component of the computing device via a data bus;
access a setting within the computing device indicating a first predefined condition of the computing device for causing a switch to physically disconnect the data bus from the at least one hardware component of the computing device;
determine that the first predefined condition of the computing device is satisfied, the first predefined condition including at least one of:
the computing device being connected to an untrusted external device, or
a network to which the computing device is connected being identified as unsecure; and
control the switch to physically disconnect the data bus from the at least one hardware component of the computing device, responsive to the determination that the USB port is in electrical communication with the at least one hardware component via the data bus and the determination that the first predefined condition of the computing device is satisfied.

US Pat. No. 10,713,204

CONTROLLING A MODE OF COMMUNICATION BETWEEN A HOST COMPUTER AND A DETACHABLE PERIPHERAL DEVICE

Hewlett-Packard Developme...

1. A method comprising:communicating data between a host computer and a peripheral device, wherein the peripheral device comprises a keyboard, the peripheral device is docked to the host computer, and communicating data between the host computer and the peripheral device comprises communicating keyboard input data from the keyboard to the host computer using a wireless mode of communication;
detecting a transition of the host computer from operating in a first power conservation state associated with a first power consumption to operating in a second power conservation state associated with a second power consumption less than the first power consumption; and
in response to the detection of the transition, automatically transitioning from using the wireless mode of communication to communicate the keyboard input data from the keyboard to the host computer to using a wired mode of communication to communicate the keyboard input data from the keyboard to the host computer.

US Pat. No. 10,713,203

DYNAMIC PARTITION OF PCIE DISK ARRAYS BASED ON SOFTWARE CONFIGURATION / POLICY DISTRIBUTION

CISCO TECHNOLOGY, INC., ...

1. An apparatus comprising:at least one Peripheral Component Interconnect Express (PCIe) switch having an input port operatively connected to a respective CPU and at least one output port; and
at least one multiplexer connected between the at least one output port of the at least one PCIe switch and a PCIe disk array, the at least one multiplexer configured to alternate a connection of the PCIe disk array between a first configuration and a second configuration in response to a change in a configuration policy, a surprise addition without notification, or a surprise removal without notification, the first configuration being the at least one multiplexer connected to a single PCIe switch in one x4 port mode or two x2 port mode, the second configuration being the at least one multiplexer connected to two PCIe switches in x2 port mode, the at least one multiplexer configured to dynamically affect a switch-over between the first configuration and the second configuration.

US Pat. No. 10,713,202

QUALITY OF SERVICE (QOS)-AWARE INPUT/OUTPUT (IO) MANAGEMENT FOR PERIPHERAL COMPONENT INTERCONNECT EXPRESS (PCIE) STORAGE SYSTEM WITH RECONFIGURABLE MULTI-PORTS

SAMSUNG ELECTRONICS CO., ...

1. A method for quality of service (QoS)-aware input/output (IO) management for a peripheral component interconnect express (PCIe) device, the method comprising:receiving, in a receiver interface, an Input/Output (IO) request from a software application, the IO request comprising data and a data characteristic associated with the data for communicating the data over a data access port, the data characteristic providing an urgency for communicating the data over the data access port;
determining, in a transfer mode selector, a data transfer mode selection based on the data characteristic associated with the data for communicating the data over the data access port, the data transfer mode being selected being one of a throughput-oriented mode, a latency-sensitive mode, and a balanced mode; and
communicating, by a block distribution unit, the data over the data access port in response to the IO request, and according to the data transfer mode.

US Pat. No. 10,713,201

APPARATUS, SYSTEM AND METHOD OF COMMUNICATING OVER A MEDIA AGNOSTIC (MA) USB CONNECTION

INTEL IP CORPORATION, Sa...

1. An apparatus comprising:a processor comprising logic and circuitry configured to cause a Media-agnostic (MA) Universal Serial Bus (USB) host of an MA USB Protocol Adaptation Layer (PAL) to communicate with an MA USB device of the MA USB PAL, the MA USB PAL to connect between a USB device and a USB host, the processor configured to cause the MA USB host to:
process a request message from a USB Driver Interface (USBDI) of the USB host for a real time data transfer to be delivered between the USB host and a USB device endpoint (EP) corresponding to the USB device;
based on the request message, transmit at least one real time transfer request to the MA USB device, a header of the real time transfer request comprising a request Identifier (ID) field to identify the real time data transfer, and a delivery time field to indicate a delivery time to complete delivery of the real time data transfer; and
based on a determination that the real time data transfer is not to be completed by the delivery time, send a response to the USBDI, the response comprising an error indication to indicate failure of the real time data transfer; and
a memory to store information processed by the processor.

US Pat. No. 10,713,200

USB ADAPTER AND CABLE

NCR Corporation, Atlanta...

1. A system comprising:a terminal device including a switch and a controller;
a peripheral device; and
a cable electrically coupling the terminal device to the peripheral device, the cable including:
a first end electrically coupled to the terminal device,
a second end electrically coupled to the peripheral device, and
a logic circuit electrically coupling the first end to the second end, the logic circuit comprising a first comparator and a second comparator, the logic circuit operative to:
manipulate a first signal transmitted by the controller and received at the first comparator,
receive at the second comparator, from the controller, a second signal,
transmit, by the first comparator, a third signal to the controller, and
transmit, by the second comparator, a fourth signal to the controller, the controller operative to:
determine that the third and fourth signals are within predetermined ranges, and
transmit a fifth signal to the switch to close the switch when the electrical signal and the fourth signal are within the predetermined ranges.

US Pat. No. 10,713,199

HIGH BANDWIDTH SOUNDWIRE MASTER WITH MULTIPLE PRIMARY DATA LANES

QUALCOMM Incorporated, S...

1. A method comprising:causing a first master device to transmit a clock signal over a clock lane of a SoundWire bus that is coupled to the first master device, wherein a first slave device, which is operated in accordance with a SoundWire protocol, is coupled to the clock lane and a first data lane of the SoundWire bus and wherein a second slave device, which is operated in accordance with the SoundWire protocol, is coupled to the clock lane and a second data lane of the SoundWire bus;
causing the first master device to transmit first control information to the first slave device over the first data lane under control of the clock signal and in accordance with the SoundWire protocol; and
causing second control information to be transmitted to the second slave device over the second data lane under control of the clock signal and concurrently with transmission of the first control information to the first slave device, wherein the second slave device is configured to receive the second control information while operating in accordance with the SoundWire protocol,
wherein the first control information is different from the second control information.

US Pat. No. 10,713,198

DIRECT MEMORY ACCESS CONTROL UNIT FOR A PROCESSING UNIT THAT INCLUDES A WORKING MEMORY

Robert Bosch GmbH, Stutt...

1. A direct access memory control unit comprising:a terminal for connecting the direct memory access control unit to a bus system that connects a processing unit to a working memory of the processing unit and to a communication module, the direct access memory control unit being connected to the working memory via the bus system using the terminal and being connected to the communications module via the bus system using the terminal, wherein the direct memory access control unit is configured to:
read in, from at least two information blocks that are provided by the processing unit for transmission to the communication module, pieces of control information that are stored in the working memory and characterize a priority of the respective information block for the transmission to the communication module, wherein the direct access memory control unit reads in the pieces of control information from the working memory via the bus system using the terminal;
ascertain a sequence for the transmission of the information blocks to the communication module as a function of the respective priority; and
transmit, via the bus system using the terminal, the information blocks from the working memory to the communication module according to the ascertained sequence using a direct memory access, using the bus system using the terminal, from the working memory to the communication module.

US Pat. No. 10,713,197

MEMORY SYSTEM, MEMORY INTERFACING DEVICE, AND INTERFACING METHOD PERFORMED IN THE MEMORY SYSTEM

SAMSUNG ELECTRONICS CO., ...

1. A method of interfacing a memory controller and a memory device in a memory system, comprising:transmitting a control signal between the memory controller and the memory device via a time division multiplexing (TDM) interface using a TDM communication process; and
transmitting data comprising a plurality of bits between the memory controller and the memory device via a serializer/deserializer (SERDES) interface using a SERDES communication process,
wherein the control signal transmitted via the TDM interface using the TDM communication process is transmitted in parallel with the data transmitted via the SERDES interface using the SERDES communication process,
wherein data communication in the memory system is performed via a physical channel and a plurality of virtual channels corresponding to the physical channel,
wherein the control signal indicates which of the plurality of virtual channels which bits included in the data are to be transmitted on.

US Pat. No. 10,713,196

FLEXIBLE AND SCALABLE ACCELERATOR ARCHITECTURE

Intel Corporation, Santa...

1. An accelerator disposed remote from a plurality of processor circuits, the accelerator comprising:queue manager circuitry to:
receive a request from one of a plurality of processor circuits, the request including information indicative of a priority and data representative of a pointer to a first location in system memory circuitry; and
enqueue the pointer to one of a plurality of queue circuits:
a plurality of accelerator circuits;
hardware resource management circuitry to dynamically allocate the plurality of accelerator circuits between the plurality of processor circuits;
direct memory access (DMA) circuitry coupled to the plurality of accelerator circuits, the DMA circuitry to:
receive the pointer from the queue manager circuitry;
read data at the first location in the system memory circuitry;
fetch input data from a second location in the system memory circuitry;
select at least one of the plurality of accelerator circuits based on the dynamic allocation of accelerator circuits to the respective processor by the hardware resource management circuitry;
provide the input data to the selected at least one of the plurality of accelerator circuits allocated to the respective processor;
receive output data from the selected at least one of the plurality of accelerator circuits allocated to the respective processor; and
transfer the output data to a third memory location in the system memory circuitry.

US Pat. No. 10,713,195

INTERRUPTS BETWEEN VIRTUAL MACHINES

Intel Corporation, Santa...

14. A system comprising:a system memory in which to store a first virtual machine control structure for a sending virtual machine, a second virtual machine control structure for a target virtual machine, and a posted interrupt descriptor; and
a first processor including:
an instruction decoder to decode an instruction set of the first processor, the instruction set including a first instruction responsive to which the processor is to send an interrupt from the sending virtual machine to the target virtual machine, the first instruction to be issued by guest software running in the sending virtual machine, the first instruction having a parameter to be used as a handle to specify the target virtual machine; and
an execution unit, implemented at least partially in hardware, to execute the first instruction on the sending virtual machine without causing a virtual machine exit, execution of the instruction to include using the handle to find the posted interrupt descriptor to be used to post the interrupt to the target virtual machine.

US Pat. No. 10,713,194

CALIBRATION ON HIGH-SPEED IO INTERFACES

International Business Ma...

1. A computer-implemented method comprising:acquiring, by one or more processing units, a series of valid control codes for a calibration stage in a channel corresponding to a plurality of calibration cycles from a calibration logic in a receiver;
analyzing, by one or more processing units, the series of valid control codes to obtain changing characteristics for the calibration stage in the channel, wherein the changing characteristics comprise at least one characteristic selected from a group consisting of: a stability for the calibration stage in the channel, and a deviation tendency for the calibration stage in the channel;
adjusting, by one or more processing units, the calibration logic for the calibration stage in the channel in one or more subsequent calibration cycles, by generating, using one or more processing units, a first control signal for controlling the calibration logic for the calibration stage in the channel in one or more subsequent calibration cycles, based on the changing characteristics;
wherein the first control signal comprises a certain number, and the first control signal is used for controlling the calibration logic for the calibration stage in the channel to keep a current valid control code unchanged for the calibration stage in the channel in a subsequent number of calibration cycles; and
wherein generating the first control signal further comprises:
in response to determining that quality degradation for the calibration stage in the channel occurs, based on the changing characteristics, generating, by one or more processing units, a second control signal for controlling the calibration logic for the calibration stage in the channel to generate a new valid control code for the calibration stage in the channel in the one or more subsequent calibration cycles.

US Pat. No. 10,713,193

METHOD FOR REMOTELY TRIGGERED RESET OF A BASEBOARD MANAGEMENT CONTROLLER OF A COMPUTER SYSTEM, AND COMPUTER SYSTEM USING THE SAME

Mitac Computing Technolog...

1. A method for remotely triggered reset of a baseboard management controller of a computer system, the computer system including a first computer node, a second computer node and a control unit, the first computer node including a first baseboard management controller that is electrically coupled to the control unit and that is linked to a computer device via a network, the second computer node including a second baseboard management controller that is electrically coupled to the control unit, said method comprising:(A) receiving, by the first baseboard management controller, from the computer device and via the network, a reset command which indicates that reset of the second baseboard management controller should be triggered;
(B) transmitting, by the first baseboard management controller and to the control unit, a control signal that corresponds to the reset command; and
(C) transmitting, by the control unit and to the second baseboard management controller, a reset signal that corresponds to the control signal, so as to trigger the reset of the second baseboard management controller.

US Pat. No. 10,713,191

SEMICONDUCTOR APPARATUS

SK hynix Inc., Icheon-si...

1. A semiconductor apparatus comprising:first transmitters allocated to a first data byte;
second transmitters allocated to a second data byte;
a switching circuit configured to couple a ground terminal with a power supply node of each of the second transmitters when a control signal has a first value, and couple a power supply terminal with the power supply node of each of the second transmitters when the control signal has a second value, and
a voltage detection circuit configured to generate the control signal depending on a result of detecting voltages of the output nodes of the second transmitters.

US Pat. No. 10,713,190

TRANSLATION LOOK-ASIDE BUFFER PREFETCH INITIATED BY BUS MASTER

Xilinx, Inc., San Jose, ...

1. A circuit arrangement comprising:a bus master circuit including a control register configured to store a value that controls a state of a sequential access signal, the bus master circuit configured to:
issue a plurality of read requests that specify respective virtual addresses, including a first read request that specifies a first virtual address of a first page; and
issue, in response to the state of the sequential access signal and before data of the first page is returned to the bus master circuit, a dummy read request of the plurality of read requests that specifies a second virtual address of a second page; and
a memory management unit (MMU) circuit coupled to the bus master circuit and including:
a translation look-aside buffer (TLB) circuit having a plurality of mappings of virtual addresses to physical addresses;
a translation logic circuit configured to translate the respective virtual addresses to the physical addresses using the mappings of the TLB circuit and to signal a TLB miss in response to absence of a mapping of a virtual address of the respective virtual addresses to a physical address in the TLB;
a first control circuit coupled to the translation logic circuit and configured to determine from a page table, a mapping of a virtual address of the respective virtual addresses, including the second virtual address, to a physical address in response to the signaled TLB miss; and
wherein the translation logic circuit is further configured to update the TLB circuit with the mapping determined from the page table.

US Pat. No. 10,713,189

SYSTEM AND METHOD FOR DYNAMIC BUFFER SIZING IN A COMPUTING DEVICE

QUALCOMM Incorporated, S...

1. A method for dynamically controlling buffer size in a computing device in a portable computing device (“PCD”), the method comprising:determining with a monitor module of a system on a chip (“SoC”) a first use case for the PCD, a plurality of components of the SoC collectively being operable in the first use case, each of the plurality of components having a first activity level in the first use case, the PCD being powered by a battery and comprising a hand-held device;
setting each of a plurality of buffers to a non-zero first buffer size based on the first use case, wherein
each of the plurality of buffers is associated one of the plurality of components of the SoC,
the first buffer size for each of the buffers is based on the first activity level and power consumption of the associated component of the SoC; a depth of at least one buffer for the first buffer size is decreased by turning off power or by gating a portion of the at least one buffer based on reduced activity and reduced power consumption of an associated component during the first activity level;
determining with the monitor module a second use case for the PCD different from the first use case, the plurality of components of the SoC collectively being operable in the second use case, each of the plurality of components having a second activity level in the second use case; and
setting each of the plurality of buffers to a non-zero second buffer size based on the second use case, wherein the second buffer size for each buffer is based on the second activity level and power consumption of the associated component of the SoC, the second buffer size different from the first buffer size; a depth of at least one buffer for the second buffer size is decreased by turning off power or by gating a portion of the at least one buffer based on reduced activity and reduced power consumption of an associated component during the second activity level, such that decreased depth of buffers during the first and second use cases reduces overall power consumption of the PCD and improves life of the battery.

US Pat. No. 10,713,188

INTER-PROCESS SIGNALING SYSTEM AND METHOD

Atmel Corporation, San J...

1. An inter-process signaling system comprising:a plurality of masters;
a plurality of resources shared by the plurality of masters; and
an inter-process signal module coupled to the plurality of masters and the plurality of resources, the inter-process signal module including:
a semaphore flag (SFLAG) register containing at least one bit per resource that indicates whether a resource is free or busy;
an SFLAG set (SFLAGSET) register for selectively setting individual bits in the SFLAG register; and
an SFLAG clear (SFLAGCLR) register for selectively clearing individual bits in the SFLAG register.

US Pat. No. 10,713,187

MEMORY CONTROLLER HAVING DATA ACCESS HINT MESSAGE FOR SPECIFYING THE GIVEN RANGE OF ONE OR MORE MEMORY ADDRESSES

ARM Limited, Cambridge (...

1. A data processing apparatus, comprising:issue circuitry configured to issue data access requests to a first data source; and
prediction circuitry configured to determine whether to send a data access hint message to a second data source, the data access hint message indicating a possible subsequent data access request,
wherein the data processing apparatus is configured to send a data access request to the first data source and a data access hint message to the second data source which is configured to fulfil the data access specified by the data access request when the first data source is unable to fulfil that data access,
wherein the prediction circuitry is configured to determine whether to send the data access hint message to the second data source in response to information, received from one or both of the first data source and the second data source, indicating whether the second data source fulfilled one or more previous data access requests.

US Pat. No. 10,713,186

PERIPHERAL PROCESSING DEVICE

FotoNation Limited, Galw...

1. A peripheral processing device comprising:a physical interface for connecting said processing device to a host computing device through a communications protocol;
a local controller connected to local memory across an internal bus and being arranged to provide input/output access to data stored on said peripheral processing device to said host computing device through a file system application programming interface, API;
a neural processor comprising at least one network processing engine for processing a layer of a neural network according to a network configuration;
a memory for at least temporarily storing network configuration information for said at least one network processing engine, input image information for processing by one of said at least one network processing engine, intermediate image information produced by said at least one network processing engine and output information produced by said at least one network processing engine,
said local controller being arranged to receive said network configuration information for each network processing engine through a file system API write command;
said local controller being arranged to receive said input image information for processing by said neural processor through a file system API write command; and
said local controller being arranged to write said output information to said local memory for retrieval by said host computing device through a file system API read command.

US Pat. No. 10,713,185

WIRELESS COMMUNICATION WITH PERIPHERAL DEVICE

Logitech Europe S.A., La...

1. An apparatus comprising:a wireless transceiver;
a memory device that stores a set of instructions; and
a hardware processor configured to execute the set of instructions to perform:
receiving, from a host device, a first indication of a host device clock signal, the apparatus and the host device being coupled via a wired interconnect;
determining, based on the first indication and a second indication of an endpoint device clock signal, a phase relationship between the host device clock signal and the endpoint device clock signal;
determining, based at least on the phase relationship, a first time for transmitting a sensor data request to a peripheral device of a computer;
transmitting, using the wireless transceiver, the sensor data request to the peripheral device at the first time;
receiving, from the peripheral device, the requested sensor data; and
providing the requested sensor data to the host device via the wired interconnect as input data to the computer,
wherein the first indication of the host device clock signal is received at a second time; and
wherein the first time for transmitting the sensor data request is determined based on the second time and a pre-determined delay between when the apparatus initiates an acquisition of the sensor data and when the sensor data becomes available at the apparatus for transfer over the wired interconnect.

US Pat. No. 10,713,184

METHODS AND APPARATUS FOR MANAGEMENT OF DATA CONNECTIONS TO A PERIPHERAL DEVICE

Cirrus Logic, Inc., Aust...

1. Interface circuitry for a host device, the interface circuitry for controlling data connections between the host device and a peripheral device, the interface circuitry comprising:a discovery module, operable to detect mating of a connector of the peripheral device with a connector of the host device, and to store an indication of the current mating status of the connector of the host device; and
a data connection management module, configured to:
responsive to detection of mating between the connector of the peripheral device and the connector of the host device by the discovery module, establish a digital data connection and an analogue data connection between the connector of the peripheral device and the connector of the host device;
responsive to detection of a deactivation event and based on the stored indication of the mating, deactivate the digital data connection, wherein the analogue data connection remains active, responsive to detection of the deactivation event; and
responsive to detection of an activation event and based on the stored indication of the mating, re-establish the digital data connection between the connector of the peripheral device and the connector of the host device.

US Pat. No. 10,713,183

VIRTUAL MACHINE BACKUP USING SNAPSHOTS AND CURRENT CONFIGURATION

Red Hat Israel, Ltd., Ra...

1. A method comprising:identifying, by a processing device, a snapshot request for a virtual machine operating on a host computing system;
initiating, by the processing device, generation of a pair of snapshots responsive to the snapshot request, the pair of snapshots comprising:
a storage snapshot of one or more storage devices in use by the virtual machine, the storage snapshot comprising a copy of data in the one or more storage devices; and
a metadata snapshot of a configuration of the virtual machine, the metadata snapshot comprising an execution state of the virtual machine and a resource usage of the host computing system, the resource usage corresponding to the virtual machine;
storing the storage snapshot of the one or more storage devices in use by the virtual machine on a storage device of the host computing system on which the virtual machine is operating;
attaching a first identifier comprising a first timestamp to the storage snapshot of the one or more storage devices in use by the virtual machine;
storing the metadata snapshot of the configuration of the virtual machine in a network attached data store, wherein the network attached data store is separate from the storage device of the host computing system storing the storage snapshot, such that the metadata snapshot is not stored in the same data store as the storage snapshot;
attaching a second identifier comprising a second timestamp to the metadata snapshot of the configuration of the virtual machine, wherein the first timestamp and the second timestamp are the same, and the first identifier and the second identifier create a link between the storage snapshot and the metadata snapshot;
updating the data in the one or more storage devices; and
generating an updated storage snapshot to reflect at least one change to the data resulting from updating the data, without changing the configuration of the virtual machine stored in the metadata snapshot.

US Pat. No. 10,713,182

INFORMATION PROCESSING APPARATUS AND METHOD

FUJITSU LIMITED, Kawasak...

1. An information processing apparatus, comprising:a first memory configured to store data and having a first access speed;
a second memory configured to store data and having a second access speed different from the first access speed; and
a processor coupled to the first memory and the second memory and the processor configured to:
calculate a first access probability and a first latency of first data stored in the first memory;
calculate a second access probability and a second latency of second data stored in the second memory;
calculate, using the first and second access probabilities and the first and second latencies, a first evaluation value in a case where storage destinations of the first data and the second data are changed between the first memory and the second memory;
calculate, using the first and second access probabilities and the first and second latencies, a second evaluation value in a case where the storage destinations of the first data and the second data are not changed; and
determine, in a case where the first evaluation value is smaller than the second evaluation value, the storage destinations such that the first data is stored in the second memory and the second data is stored in the first memory.

US Pat. No. 10,713,181

METHOD AND SYSTEM FOR SHARING DRIVER PAGES

Virtuozzo International G...

1. A computer-implemented method for sharing driver pages among Containers, the method comprising:on a computer system having a processor, a single operating system (OS) and a first instance of a system driver installed and performing system services, instantiating a plurality of Containers that virtualize the OS,
wherein the first instance of the system driver is loaded from an image into a plurality of pages, and
instantiating a second instance of the system driver upon a request from one of the Containers for system services by:
(a) allocating virtual memory pages for the second instance and loading, from the image, the second instance into a physical memory;
(b) acquiring virtual addresses of identical pages of the first instance compared to the second instance;
(c) mapping the virtual addresses of the identical pages of the second instance to physical pages to which virtual addresses of the corresponding pages of the first instance are mapped, and protecting the physical pages from modification;
(d) releasing the physical memory occupied by the identical physical pages of the second instance; and
(e) starting the second instance.

US Pat. No. 10,713,180

LOOKAHEAD PRIORITY COLLECTION TO SUPPORT PRIORITY ELEVATION

TEXAS INSTRUMENTS INCORPO...

1. A method comprising:storing a first external priority in a first field of a register;
storing a second external priority in a second field of the register, wherein the first external priority represents a greater priority than the second external priority;
receiving, at a request pipeline, a set of transaction requests from two or more requestors for access to a memory system and a set of transaction priority values, wherein each transaction request of the set of transaction requests has a respective transaction priority value of the set of transaction priority values;
storing the set of transaction requests and the set of transaction priority values in the request pipeline;
determining a highest transaction priority value of the set of transaction priority values within the request pipeline;
based on the highest transaction priority value representing a greater priority than the respective transaction priority value of a first transaction request of the set of transaction requests stored in the request pipeline, providing the first transaction request and the first external priority to the memory system; and
based on the highest transaction priority value not representing a greater priority than the respective transaction priority value of a second transaction request of the set of transaction requests stored in the request pipeline, providing the second transaction request and the second external priority to the memory system.

US Pat. No. 10,713,179

EFFICIENTLY GENERATING EFFECTIVE ADDRESS TRANSLATIONS FOR MEMORY MANAGEMENT TEST CASES

International Business Ma...

1. A method for efficiently generating effective address translations for memory management test cases, the method comprising:obtaining a first set of effective addresses (EAs), wherein each EA comprises an effective segment identifier (‘ID’) and a page, wherein each effective segment ID of each EA in the first set of EAs is mapped to a same first effective segment;
obtaining a set of virtual address corresponding to the first set of EAs, wherein each virtual segment ID of each virtual address in the first set of virtual addresses is mapped to a same virtual segment;
translating the first set of EAs by applying a hash function to each virtual address in the set of virtual addresses to obtain a first set of page table entry group (PTEG) addresses mapped to a first set of PTEGs; and
generating a translation for a second set of EAs to obtain a second set of PTEG addresses mapped to the first set of PTEGs, wherein each effective segment ID of each EA in the second set of EAs is mapped to a same second effective segment.

US Pat. No. 10,713,178

MAPPING TABLE UPDATING METHOD, MEMORY CONTROLLING CIRCUIT UNIT AND MEMORY STORAGE DEVICE

PHISON ELECTRONICS CORP.,...

7. A memory controlling circuit unit, for controlling a rewritable non-volatile memory module, the memory controlling circuit unit comprising:a host interface, coupled to a host system;
a memory interface, coupled to the rewritable non-volatile memory module, wherein the rewritable non-volatile memory module has a plurality of physical erasing units, a plurality of logical-physical mapping tables are stored in the rewritable non-volatile memory module to record mapping information between a plurality of logical units and the plurality of physical erasing units;
a memory management circuit, coupled to the host interface and the memory interface,
wherein the memory management circuit is configured to establish a physical-logical mapping table, wherein the physical-logical mapping table records mapping information between at least one active physical erasing unit of the plurality of physical erasing units and a plurality of updated logical units of the plurality of logical units,
wherein the memory management circuit is further configured to calculate, according to the physical-logical mapping table, a plurality of updated data counts of the updated logical units in the active physical erasing unit,
wherein the memory management circuit is further configured to select first updated logical units from the updated logical units according to the updated data counts, wherein a number of the first updated logical units is less than a number of the updated logical units,
wherein the memory management circuit is further configured to load at least one first logical-physical mapping table corresponding to the first updated logical units from the plurality of logical-physical mapping tables,
wherein the memory management circuit is further configured to update mapping information in the first logical-physical mapping table according to mapping information of the first updated logical units in the physical-logical mapping table.

US Pat. No. 10,713,177

DEFINING VIRTUALIZED PAGE ATTRIBUTES BASED ON GUEST PAGE ATTRIBUTES

Intel Corporation, Santa...

1. A processing system comprising:a memory management unit to store an extended page table entry (EPTE) of an extended page table stored in memory, the EPTE to map a guest physical address (GPA) to an identifier of a memory frame associated with a host physical address (HPA); and
a processing core communicatively coupled to the memory management unit, the processing core to execute a virtual machine (VM) comprising a guest operating system (OS) and to execute a virtual machine monitor (VMM) to support the VM, wherein the VMM is to create the EPTE to include access right flags for the GPA corresponding to one of a user mode or a supervisor mode assigned by the guest OS, wherein to create the EPTE, the VMM is to:
store, in the EPTE using rules of a policy data structure, values of a first plurality of access right flags associated with accessing the memory frame in the user mode referenced by an attribute of a memory page identified by the GPA, wherein the first plurality of access right flags comprises a user read (RU) flag, a user write (WU) flag, and a user execute (XU) flag; and
store, in the EPTE using the rules of the policy data structure, values of a second plurality of access right flags associated with accessing the memory frame in the supervisor mode referenced by the attribute of the memory page identified by the GPA, wherein the second plurality of access right flags comprises a supervisor read (RS) flag, a supervisor write (WS) flag, and a supervisor execute (XS) flag; and
wherein the memory management unit is to:
determine whether a configuration flag is set to enable or disable a user/supervisor (U/S) bit value;
responsive to the configuration flag not being set:
copy, to a buffer entry, a mapping between the GPA and the identifier of the memory frame and predetermined access right flags for read (R), write (W), and execute (X); and
disregard the U/S bit value.

US Pat. No. 10,713,176

SYSTEM AND METHOD FOR DATA PROCESSING

Alibaba Group Holding Lim...

1. A computer-implemented method for data processing, comprising:obtaining bytecode compiled from source code comprising one or more input parameters, the source code including an encoding function to encode the one or more input parameters, save the encoded one or more input parameters in a memory segment, and provide a memory location of the memory segment, wherein the memory location comprises an address corresponding to the memory segment, and the address is shifted by compilation in the bytecode compiled from the source code;
executing, according to the bytecode, the encoding function to encode the one or more input parameters to obtain the memory location of the memory segment storing the encoded one or more input parameters;
providing the memory location to a function for retrieving and decoding the encoded one or more input parameters to obtain the one or more input parameters; and
executing the function by:
restoring the shifted address according to a storage starting location of a virtual machine and an address shift obtained by the virtual machine,
retrieving the encoded one or more input parameters according to the restored address, and
decoding the encoded one or more input parameters to retrieve the one or more input parameters.

US Pat. No. 10,713,175

METHOD AND MEMORY AVAILABILITY MANAGING MODULE FOR MANAGING AVAILABILITY OF MEMORY PAGES

TELEFONAKTIEBOLAGET LM ER...

1. A method, performed by a Memory Availability Managing Module, for managing availability of memory pages, wherein the memory pages are comprised in a set of memory blades, wherein a hardware system comprises the set of memory blades and a set of computing pools, wherein the set of memory blades and the set of computing pools are interconnected with each other, wherein the set of computing pools comprises computing units, wherein at least one operating system executes on the hardware system, wherein the Memory Availability Managing Module is independent of the operating system, the method comprising:receiving a message relating to allocation of at least one memory page of the memory pages to the at least one operating system, wherein the message comprises an indication about availability for the at least one memory page;
translating the indication about availability to a set of memory blade parameters, wherein the set of memory blade parameters identifies at least one memory blade of the set of memory blades, wherein the at least one memory page is allocated to the at least one memory blade;
generating, based on the set of memory blade parameters, address mapping information for the at least one memory page, wherein the address mapping information includes a logical address of the at least one memory page mapped to at least two physical memory addresses of the at least one memory blade; and
providing at least some of the address mapping information for use when access to the at least one memory page is requested, wherein the at least some of the address mapping information comprises one of the at least two physical memory addresses.

US Pat. No. 10,713,174

STREAMING ENGINE WITH EARLY AND LATE ADDRESS AND LOOP COUNT REGISTERS TO TRACK ARCHITECTURAL STATE

TEXAS INSTRUMENTS INCORPO...

1. A data processing apparatus comprising:a processing core;
a memory; and
a streaming engine configured to receive a plurality of data elements stored in the memory and to provide the plurality of data elements as a data stream to the processing core, wherein the streaming engine includes:
an early address generator to generate early addresses corresponding to locations in the memory, wherein each early address generated by the early address generator indicates a location in the memory of a next data element to be fetched;
an early address register to store an early address generated by the early address generator that corresponds to a current next data element to be fetched from the memory;
a buffer to store the data elements fetched from the locations in the memory corresponding to the early addresses generated by the early address generator;
a stream holding register coupled to the buffer;
a late address generator to generate late addresses corresponding to locations in the buffer, wherein each late address generated by the late address generator indicates a location in the buffer of a next data element to be loaded into the stream holding register, wherein each late address generated by the late address generator is generated by determining a current loop count value and determining the late address by multiplying the current loop count value by a size of the data elements of the data stream;
a late address register to store an address generated by the late address generator that corresponds to a current next data element to be loaded into the stream holding register; and
an output to supply data elements stored in the stream holding register to the processing core as the data stream.

US Pat. No. 10,713,172

PROCESSOR CACHE WITH INDEPENDENT PIPELINE TO EXPEDITE PREFETCH REQUEST

SHANGHAI ZHAOXIN SEMICOND...

1. A cache memory for a processor, comprising:an arbiter that arbitrates among a plurality of memory access requests and that provides a selected memory access request;
a tag array having a first read port receiving said selected memory access request and having a second read port receiving a prefetch request directly from a prefetcher, wherein said tag array makes a hit or miss determination of whether data requested by said selected memory access request or said prefetch request is stored in a corresponding data array;
a request queue having a first write port for receiving said selected memory access request when said selected memory access request misses in said tag array, and having a second write port for receiving said prefetch request when said prefetch request misses in said tag array,
wherein the second read port of the tag array and the second write port of the request queue forms a third signal path for handling said prefetch request without interfering with said selected memory access request;
a first signal path, wherein said tag array interfaces with said data array via said first signal path;
a second signal path, wherein said tag array interfaces with said first write port of said request queue via said second signal path in the event said selected memory access request misses in said tag array; and
said third signal path, wherein said tag array interfaces with said second write port of said request queue via said third signal path in the event said prefetch request misses in said tag array.

US Pat. No. 10,713,171

COMPUTER SYSTEM

HITACHI, LTD., Tokyo (JP...

1. A computer system, comprising a plurality of first computers, wherein:each of the plurality of first computers is configured to execute an application;
the each of the plurality of first computers is coupled to a second computer for providing a storage area;
data to be used by the application is stored in the storage area provided by the second computer;
each of the plurality of first computers includes a first processor, a first memory, a cache device to which a cache area for temporarily storing data is set, and a first interface for coupling to another apparatus;
the second computer includes a controller including a second processor, a second memory, and a second interface for coupling to another apparatus, and a plurality of storage apparatus;
the first memory stores an operating system configured to control the first computer upon execution of the operating system by the first processor;
the operating system includes:
a cache driver configured to control data stored in the cache area; and
a cooperation control module configured to:
issue a control input/output (I/O) request for instructing arrangement control for subject data in the computer system based on an analysis result of an I/O request including identification information on an apparatus of a transfer destination and an address for access to the subject data;
analyze an I/O request upon detection of an issuance of the I/O request from the cache driver;
determine whether hint information indicating how the subject data is used by the application is included in the detected I/O request based on an analysis result of the detected I/O request;
generate the control I/O request from the detected I/O request based on the analysis result of the detected I/O request upon determining that the hint information is included in the detected I/O request; and
transfer the control I/O request to an apparatus different from the second computer which is a transfer destination of the detected I/O request,
wherein the second computer to which the detected I/O request is forwarded is configured to transfer data relating to the detected I/O request to the first computer, and
wherein the second computer which receives the control I/O request is configured to move the data relating to the control I/O request to the second memory from at least one of the plurality of storage apparatus without transferring to the first computer.

US Pat. No. 10,713,170

MULTIPLE CHANNEL CACHE MEMORY AND SYSTEM MEMORY DEVICE UTILIZING A PSEUDO-MULTIPLE PORT FOR COMMANDS AND ADDRESSES AND A MULTIPLE FREQUENCY BAND QAM SERIALIZER/DESERIALIZER FOR DATA

TSVLINK CORP., Santa Cla...

1. A computing device comprising:a first chip comprising one or more CPU cores, a memory controller coupled to the one or more CPU cores, a first serializer-deserializer device, the memory controller comprising a cache memory controller and a system memory controller;
a second chip comprising cache memory managed by the cache memory controller, a data router, and a second serializer-deserializer device;
system memory separate from the first chip and the second chip and managed by the system memory controller and the data router;
a first interface coupled between the system memory and the second chip;
a second interface comprising a single wire coupled between the first serializer-deserializer device and the second serializer-deserializer device, wherein the first serializer-deserializer device and the second serializer-deserializer device exchange data over the single wire using quadrature amplitude modulation;
wherein a memory request from the one or more CPU cores is serviced by the cache memory controller by providing data from the cache memory to the one or more CPU cores over the second interface if there is a cache hit for the memory request or by the data router by providing data to the one or more CPU cores from the system memory if there is a cache miss for the memory request.

US Pat. No. 10,713,169

REMOTE NODE BROADCAST OF REQUESTS IN A MULTINODE DATA PROCESSING SYSTEM

International Business Ma...

1. A method of data processing in a cache coherent data processing system including at least non-overlapping first, second, and third coherency domains employing a snoop-based coherence protocol and coupled to a system interconnect fabric, said method comprising:coherence participants in the first coherency domain receiving on the system interconnect fabric a memory access request originating from a master in the second coherency domain, the memory access request including a scope indicator indicating a broadcast scope of the memory access request excluded the third coherency domain;
the coherence participants in the first coherency domain providing partial responses for the memory access request and, based on receiving the memory access request on the system interconnect fabric, one of the coherence participants speculatively providing, to the master, data from a memory block identified by a target memory address specified in the memory access request, wherein the speculatively providing includes transmitting the data in advance of receipt by the one of the coherence participants of a combined response to the memory access request, and wherein the data includes a memory domain indicator indicating whether the memory block identified by the target memory address is cached, if at all, only within the first coherency domain;
based on the partial responses, a combined response generator generating and transmitting to the master the combined response, said combined response representing a systemwide coherence response to the memory access request; and
in response to the combined response indicating success and the memory domain indicator indicating that a valid copy of the memory block may be cached outside the first coherence domain, the master discarding the speculatively provided data and reissuing the memory access request with a larger broadcast scope including the third coherency domain.

US Pat. No. 10,713,168

CACHE STRUCTURE USING A LOGICAL DIRECTORY

International Business Ma...

1. A method for operating access to a cache memory via an effective address comprising a tag field and a cache line index field, the cache memory comprising a primary cache directory being logically addressed and logically tagged, the method comprising:determining a first group of bits and a second group of bits of the tag field;
providing a set directory logically indexed using line index bits of the cache line index field and logically tagged using the first group of bits;
providing a validation directory logically indexed using the line index bits and set bits and logically tagged using the second group of bits;
first searching for the line index bits and the first group of bits of the effective address in the set directory, and generating a set identifier indicating the set containing the respective cache line of the effective address;
second searching for the set identifier, the line index bits and the second group of bits of the effective address in the validation directory;
in response to determining the presence of the cache line in the set based on the second searching, generating a hit signal; and
wherein a given entry in the primary cache directory stores a valid bit, a portion of the effective address and a set index, the method further comprising: in parallel to the first searching, searching the line index bits in the primary cache directory, resulting in a valid bit value for each found entry in the primary cache directory, selecting a valid bit value of the valid bit values whose associated set index matches the set identifier, wherein the generating of the hit signal is performed if the valid bit value indicates a valid state.

US Pat. No. 10,713,167

INFORMATION PROCESSING APPARATUS AND METHOD INCLUDING SIMULATING ACCESS TO CACHE MEMORY AND GENERATING PROFILE INFORMATION

FUJITSU LIMITED, Kawasak...

7. An information processing method executed by a computer, comprising:converting program information of a target program into a source file of an instruction address information acquisition program;
executing the instruction address information acquisition program;
acquiring a first address in a first memory, at which an instruction included in the target program is stored;
converting the program information of the target program into a source file of a profile information generation program;
executing the profile information generation program;
simulating access to a second memory of the computer, the simulated access to the second memory corresponding to an access request for access to the first address on a basis of configuration information of the second memory; and
generating cache profile information indicating whether the access to the second memory regarding the instruction is a hit or miss.

US Pat. No. 10,713,166

EFFICIENT EARLY ORDERING MECHANISM

SAMSUNG ELECTRONICS CO., ...

1. A multiprocessor system comprising:a plurality of nodes, a network on chip (NoC), a directory (DIR), a global last level cache (LLC) and at least one memory, wherein each node contains at least one processor, a first cache, a second cache private to the node, and a first cache location buffer (CLB) private to the node,
wherein the first CLB stores a plurality of first CLB entries, each of the first CLB entries includes an address tag field and a cache location table (CLT), which includes a plurality of location information values with the address tag field, each location information value indicating a location associated with a respective data unit,
wherein the location information values are used to search a target cache line from the first cache or the second cache,
wherein the NoC is configured to connect the DIR, the LLC, and at least the memory to the nodes,
wherein the DIR is configured to include region information comprised of first presence bits indicating which node is tracking location information of a target cache line,
wherein the DIR is configured such that, in response to a request sent by a first node from among the plurality of nodes, the DIR sends a request associated with a global coherence operation to one or more nodes from among the plurality of nodes, based on the first presence bits,
wherein at least a second node from among the plurality of nodes is configured to send a request associated with a global coherence operation to one or more nodes from among the plurality of nodes based on second presence bits included in a CLB private to the second node.

US Pat. No. 10,713,165

ADAPTIVE COMPUTER CACHE ARCHITECTURE

WISCONSIN ALUMNI RESEARCH...

1. A cache architecture comprising:an adaptive cache having regions holding cache frames storing data blocks cached from a main memory for use by one or more processors, each cache frame associated with a dirty bit that is set when the cache frame holds data that has been changed by a processor but has not been updated in the main memory and that is reset otherwise;
a laundry counter associated with each region storing a count value; and
a cache controller operating to:
(a) update the laundry counters during operation of the cache architecture to indicate whether an associated region has any set dirty bits;
(b) write data to a given cache frame in the region in a first mode without first reading the dirty bit of the cache frame based on a determination that the associated laundry counter indicates no dirty frames in the region; and
(c) write data to a given cache frame in a second mode based on a determination that the associated laundry counter indicates at least one dirty frame in the region after first reading the dirty bit of the given cache frame to ensure that the given cache frame dirty bit is not set.

US Pat. No. 10,713,164

CACHE HIT RATIO SIMULATION USING A PARTIAL DATA SET

EMC IP Holding Company LL...

1. A non-transitory tangible computer readable storage medium having stored thereon a computer program for implementing a method of cache hit ratio simulation using a partial data set, the computer program including a set of instructions which, when executed by a computer, cause the computer to perform a method comprising the steps of:determining a set of sampled addresses, the set of sampled addresses being a subset of all addresses of a storage system of a storage environment;
using, by a simulation engine, a cache management algorithm to determine a cache hit ratio of the set of sampled addresses, the cache management algorithm being also used by a cache manager to place a portion of the addresses of the storage system into cache during a runtime operation;
determining a quantity of memory access operations to frequently accessed addresses in the set of sampled addresses; and
correcting, by the simulation engine, the cache hit ratio of the set of sampled addresses based on the quantity of memory access operations to the frequently accessed addresses in the set of sampled addresses;
wherein the step of correcting further comprises obtaining actual cache size and actual hit ratio information of the storage system, and wherein correcting comprises determining a ratio of cache hits attributable to the quantity of memory access operations to frequently accessed addresses in the set of sampled addresses; and
wherein the step of correcting comprises calculating a ratio of hits going to very active tracks (R_VAct) across all workloads as R_VAct=actual hit ratio (Actual_H) minus predicted adjusted hit ratio (Predict_H) divided by (1?Actual_H).

US Pat. No. 10,713,163

SET AWARE SYSTEM DATA AND MAPPING TABLES

Toshiba Memory Corporatio...

1. A method of managing a solid state drive (SSD), the method comprising:storing a first set of data in a first plurality of non-volatile memory dies, the first plurality of non-volatile memory dies communicatively arranged in one or more first communication channels;
storing a second set of data in a second plurality of non-volatile memory dies, the second plurality of non-volatile memory dies communicatively arranged in one or more second communication channels;
generating a first set of system data corresponding only to the first set of data;
generating a second set of system data corresponding only to the second set of data; and
managing the first set of system data corresponding to the first set of data independently of the second set of system data corresponding to the second set of data,
wherein the one or more first communication channel and the one or more second communication channel are communicatively coupled to one or more channel controllers, the one or more channel controls are communicatively coupled to a memory controller, and the first plurality of non-volatile memory dies and the second plurality of non-volatile memory dies are part of an array of non-volatile memory dies.

US Pat. No. 10,713,162

SYSTEM AND METHOD FOR COMPUTER DATA GARBAGE COLLECTION ACCELERATION USING PEER TO PEER DATA TRANSFERS

Lightbits Labs Ltd., Kfa...

1. A system for accelerating garbage collection (GC) on a non-volatile memory (NVM) computer storage media, comprising a host computer and an accelerator associated with the NVM media, wherein the host computer comprises a processor configured to:monitor at least one parameter of data validity of at least one physical write unit (PWU), wherein each PWU comprises a plurality of contiguous physical data pages of the NVM media; and
send at least one GC command to the accelerator according to the at least one monitored parameter, based on the monitored data validity parameter;
and wherein the accelerator is configured to:
copy a plurality of data-objects stored on at least one first PWU, to a read address space comprised within the accelerator;
copy valid data-objects from the read address space to a write address space comprised within the accelerator, until the amount of data in the write address space exceeds a predefined threshold; and
store the data content of the write address space in at least one second PWU in the NVM media.

US Pat. No. 10,713,161

MEMORY SYSTEM AND METHOD FOR CONTROLLING NONVOLATILE MEMORY

Toshiba Memory Corporatio...

1. A memory system connectable to a host, comprising:a nonvolatile memory; and
a controller including a host interface and a processor configured to control the host interface, and configured to:
receive, through the host interface from the host, a first write command including a first logical address;
in response to receiving the first write command, write first data associated with the first write command into the nonvolatile memory;
receive, through the host interface from the host, a second write command including a second logical address; and
in response to receiving the second write command, write second data associated with the second write command into the nonvolatile memory, wherein
the controller is configured to:
when the second logical address included in the second write command is identical with the first logical address included in the first write command,
obtain a total amount of data received from the host during a period from a time of receiving the first write command to a time of receiving the second write command, or a value representing an elapsed time from a time of processing with respect to the first write command to a time of processing with respect to the second write command;
update a logical-to-physical address translation table such that a new physical address in which the second data are written is mapped to the first logical address; and
notify the host of the total amount of data or the value representing the elapsed time.

US Pat. No. 10,713,159

SEMICONDUCTOR DEVICE FOR MANAGING WEAR LEVELING OPERATION OF A NONVOLATILE MEMORY DEVICE

SK hynix Inc., Icheon-si...

1. A semiconductor device comprising:a media controller configured to output an address in response to receiving a write request for writing to a nonvolatile memory; and
a hot address detector configured to:
store a list including the address output from the media controller and including meta data related to the address;
update the meta data according to the address output from the media controller;
determine whether the address output from the media controller is a hot address; and
adjust a length of the list;
wherein the hot address detector comprises: a memory stack configured to store the list; and a detecting circuit comprising a detection controller, wherein the detecting circuit is configured to detect a hot address from the list according to a first threshold value and to adjust a length of the list; wherein the detection controller is configured to adjust a length of the list based on a number of time the media controller provides the address; and wherein the detection controller is further configured to evict, from the list, a candidate victim node with a frequency count of zero and with a hit count of less than a second threshold value; and the semiconductor device further comprising a mapping circuit for storing a mapping table indicating a mapping relationship between a logical address and a physical address, wherein the mapping circuit comprises a counter array configured to store a write count corresponding to the address, the media controller is configured to update the write count according to the write request.

US Pat. No. 10,713,158

NON-VOLATILE STORAGE SYSTEM WITH DYNAMIC ALLOCATION OF APPLICATIONS TO MEMORY BASED ON USAGE MONITORING

Western Digital Technolog...

1. An apparatus, comprising:a non-volatile memory having a first section and a second section, wherein the second section is configured to have a higher endurance level than the first section; and
one or more control circuits connected to the non-volatile memory, wherein the one or more control circuits are configured to:
receive an application from a host, the application including code for executing the application and data used by the application, and a range of logical addresses corresponding to the code for executing the application and data used by the application;
store the application in the first section of the non-volatile memory;
monitor a frequency of rewriting of the whole of the range of logical addresses corresponding to the code for executing the application and the data used by the application;
in response to the frequency of rewriting of the whole of the range of logical addresses corresponding to the code for executing the application and the data used by the application exceeding a first value, send a first notification to the host; and
in response to receiving a reply to the first notification from the host requesting that the data used by the application be transferred from the first section of the non-volatile memory to the second section of the non-volatile memory, transfer storage of the whole of the range of logical addresses corresponding to data used by the application from the first section of the non-volatile memory to the second section of the non-volatile memory.

US Pat. No. 10,713,157

STORAGE SYSTEM AND METHOD FOR IMPROVING READ PERFORMANCE USING MULTIPLE COPIES OF A LOGICAL-TO-PHYSICAL ADDRESS TABLE

Western Digital Technolog...

1. A method for parallelism in a storage system, the method comprising:performing the following in a storage system comprising a plurality of memory areas accessible in parallel, wherein each memory area stores an identical copy of a logical-to-physical address table:
reading portions of the identical copies of the logical-to-physical address table in parallel from the plurality of memory areas, wherein the portions comprise translations for logical addresses associated with a plurality of memory commands;
translating the logical addresses associated with the plurality of memory commands into physical addresses using the read portions; and
performing the plurality of memory commands.

US Pat. No. 10,713,156

SYSTEMS AND METHODS FOR MEMORY SYSTEM MANAGEMENT

Micron Technology, Inc., ...

1. A system comprising:a stacked memory structure operable to communicate with a host, the stacked memory structure having multiple memory dies arranged vertically in a stack, one or more of the multiple memory die arranged into multiple regions, such regions having a respective thermal sensor; and
thermal control logic operable to read the state of the thermal sensors and to adjust refresh rates of the multiple regions of the one or more memory die based on the temperature of the respective region, wherein the thermal control logic is operable to adjust refresh rates of multiple regions of each memory die independently, using a relationship between temperature gradient categories and refresh rates to control refresh, the relationship correlated to a product of a factor and a reference refresh rate.

US Pat. No. 10,713,155

BIASED SAMPLING METHODOLOGY FOR WEAR LEVELING

Micron Technology, Inc., ...

1. A system comprising:a memory device; and
a processing device, coupled to the memory device, the processing device to:
sample first data units from a set of data units of the memory device, wherein the first data units comprise a subset of the set of data units;
sort the first data units that were sampled from the set of data units into a first order based on a wear metric associated with the first data units, wherein the wear metric is indicative of a level of physical wear of the first data units;
responsive to sorting the first data units, determine an initial data unit from the first data units as a first candidate data unit based on the wear metric associated with the first data units; and
perform a wear leveling operation in view of the first candidate data unit.

US Pat. No. 10,713,154

SMART TEMPLATE TEST FRAMEWORK

SAP SE, Walldorf (DE)

1. A computer-implemented method comprising:receiving data characterizing graphical user interface elements of a software application;
identifying labels within the received data;
identifying which of the labels have corresponding input fields;
determining which of a plurality of application templates was used to generate the software application, wherein applications generated using a same template differ in number of input fields, tables, and tabs;
polling, using the identified input fields, a test data repository for test data appropriate for such input fields; and
executing a testing script for the software application that corresponds to the determined application template using the test data, the testing script injecting the test data into the identified input fields.

US Pat. No. 10,713,153

METHOD AND SYSTEM FOR TESTING AN EXTENDED PATTERN USING AN AUTOMATIC PATTERN TESTING ENGINE

Intuit Inc., Mountain Vi...

1. A method performed by one or more processors, the method comprising:maintaining a pattern library including one or more patterns corresponding to a machine image for implementing cloud-based applications, each pattern including configuration data related to a cloud computing architecture and security standards for implementing applications with the cloud computing architecture;
receiving, with an automatic pattern generation engine, a request to generate an extended pattern from a base pattern included in the pattern library;
receiving, with the automatic pattern generation engine, attributes for the extended pattern;
generating, with the automatic pattern generation engine, the extended pattern based on the attributes and the base pattern;
generating, with an automatic pattern testing engine, test cases for testing the extended pattern based on the attributes;
testing, with the automatic pattern testing engine, the extended pattern according to the test cases;
if the extended pattern does not pass the test cases, denying publication of the extended pattern; and
if the extended pattern passes the test cases, publishing the extended pattern to the pattern library.

US Pat. No. 10,713,152

AUTOMATED PATH GENERATOR FOR OPTIMIZED APPLICATION TESTING

SAP SE, Walldorf (DE)

1. A computer implemented method comprising:parsing, by a testing application, an application module in a text file format to identify, for a portion of a plurality of source code lines of the application module, wherein each source code line is identified with a corresponding line number;
identifying predicate conditions from the source code lines;
determining whether one or more key values are associated with each predicate condition of the identified predicate conditions, wherein the one or more key values are associated with a key field from key fields defined for and internal to the application module, wherein a predicate condition is associated with a set of source code lines that are traversed during execution of the application module when a received input field value at the application module complies with the predicate condition;
determining a plurality of paths of execution of the application module, wherein a path of the plurality of paths indicates a plurality of specific line numbers from the source code lines, wherein the specific line numbers identify a subset of the portion of source code lines and correspond to an execution sequence of the application module, and wherein the path is determined based on at least one of the identified predicate conditions; and
based on the determined key values for the predicate conditions and the determined plurality of paths of execution of the source code for the application module, generating one or more test cases, wherein a test case corresponds to the path and the at least one of predicate conditions defined at source code lines from the path.

US Pat. No. 10,713,151

PROGRAM EXECUTION COVERAGE EXPANSION BY SELECTIVE DATA CAPTURE

Microsoft Technology Lice...

1. A system for expanding code execution coverage in a test environment, the system comprising:a processor;
a memory in operable communication with the processor;
a program having a non-covered portion and a covered portion, the non-covered portion including code which is not exercised by a set of tests which exercises the covered portion of the program but is insufficient to exercise the non-covered portion of the program;
a non-covered portion identifier which identifies the non-covered portion;
a trigger inserter which upon execution with the processor inserts a trigger in the program, the trigger inserted at a position which permits capture of data which aids exercise of the non-covered portion;
a data capturer which upon execution with the processor and in response to operation of the trigger captures data which aids exercise of the non-covered portion in at least the test environment;
whereby code execution coverage of the program is expanded in the test environment by the capture of data which aids exercise of program code that was not being exercised previously by the set of tests.

US Pat. No. 10,713,150

ACCURATE TEST COVERAGE OF GENERATED CODE

SAP SE, Walldorf (DE)

1. A system comprising:at least one data processor; and
at least one memory storing instructions which, when executed by the at least one data processor, result in operations comprising:
performing unit testing of one or more lines of code of an application by at least:
executing during runtime the one or more lines of code,
generating, from the executed one or more lines of code, additional code including generated code including instructions to increment at least one counter in a map, the map mapping one or more frames to the at least one counter,
compiling the generated code,
incrementing, each time the compiled generated code is executed during runtime, the at least one counter in the map, and
providing the at least one counter to enable verification of the unit testing of the generated code.

US Pat. No. 10,713,149

PROCESSING AUTOMATION SCRIPTS OF SOFTWARE

INTERNATIONAL BUSINESS MA...

1. A method of processing an automation script used for testing a page, the method comprising:executing the automation script;
searching for an element on the page according to locating information contained within an instruction of the automation script;
collecting, responsive to finding the element on the page according to the locating information, element-related information;
determining, according to the collected element-related information, that a better instruction for performing the searching exists; and
updating, using the better instruction, the automation script;
wherein the locating information includes: an attribute of the element, content of the element and an XPath of the element.

US Pat. No. 10,713,148

USING DIVERGENCE TO CONDUCT LOG-BASED SIMULATIONS

Waymo LLC, Mountain View...

1. A method of testing software for operating a vehicle in an autonomous driving mode, the method comprising:running a first simulation using log data collected by a vehicle operating in an autonomous driving mode, wherein the first simulation is run using the software to control a first simulated vehicle;
comparing one or more characteristics of the first simulated vehicle with one or more characteristics of the vehicle from the log data in order to determine a divergence point;
using the divergence point to determine a handover time for a second simulation, the handover time corresponding to a time in the second simulation at which the software is allowed to take control of a second simulated vehicle of the second simulation;
running the second simulation using the log data, wherein the second simulation is run using the handover time and the software to control the second simulated vehicle; and
determining whether the software is able to complete the second simulation without a particular type of event occurring in the second simulation.

US Pat. No. 10,713,147

TEST APPARATUS AND METHOD IMPLEMENTING INSTRUCTION REQUEST COMMAND FOR TESTING COMPUTING MACHINE RESOURCES

FUJITSU LIMITED, Kawasak...

1. A test apparatus that tests specific processing performed by a plurality of computing machine resources in coordination with each other, the computing machine resources provided by one or a plurality of computers, the test apparatus comprising:a memory; and
a processor coupled to the memory and configured to:
add an instruction request command to request an instruction from the test apparatus at a predetermined position in a source code of the specific processing performed by each of the plurality of computing machine resources, and generate the source code with an additional command, and
in response to execution of the instruction request command in one of the plurality of computing machine resources during execution of the specific processing, refer to the memory that stores instruction information by which the instruction request command added to the source code with the additional command executed by each of the plurality of computing machine resources is associated with processing performed by the computing machine resource, and instruct the one of the plurality of computing machine resources which has executed the instruction request command to perform the processing corresponding to the executed instruction request command,
wherein in response to execution of the instruction request command by one of the plurality of computing machine resources during execution of pre-processing of the specific processing performed before the specific processing is performed, the processor instructs the one of the plurality of computing machine resources which has executed the instruction request command to perform processing determined at random; and
the processor is further configured to:
in response to execution of the instruction request command by the one of the plurality of computing machine resources, output log information indicating a state of the one computing machine resource,
detect a predetermined abnormality which has occurred in the plurality of computing machine resources when the processing determined at random is performed, and
upon detection of an occurrence of the predetermined abnormality, generate the instruction information based on the log information, wherein:
the instruction information is information by which the instruction request command added to the source code with the additional command executed by each of the plurality of computing machine resources, the processing performed by the computing machine resource, and a predetermined condition are associated with each other; and
when the predetermined condition is satisfied, the processor provides an instruction to perform the processing corresponding to the executed instruction request command.

US Pat. No. 10,713,144

VIRTUAL PROCESSOR ENABLING REAL-TIME IN SITU DISASSEMBLY AND DEBUGGING IN SOC ENVIRONMENT

General Electric Company,...

1. A computing system comprising:a virtual processor implemented in field programmable gate array (FPGA) programmable logic, the virtual processor comprising a virtual version of a target system;
a memory device storing instructions; and
an embedded processor coupled to the FPGA programmable logic via a virtual processor interface, the embedded processor being distinct from the FPGA programmable logic and configured to execute the instructions, wherein the executed instructions cause the embedded processor to:
capture data representative of operations in the virtual processor using a bus access device configured to provide direct access to components of the virtual processor;
stream the data to the embedded processor via the virtual processor interface;
store the data in the memory device; and
perform, substantially in real time while the target system is running, in-situ disassembly and debugging of the data representative of the operations of the virtual processor, wherein the debugging comprises one or more of a tracing operation, a breakpoint operation, a watchpoint operation, a triggering operation, a halting operation, or an event counting operation.

US Pat. No. 10,713,143

CALIBRATABLE LOG PROJECTION AND ERROR REMEDIATION SYSTEM

Accenture Global Solution...

1. A method comprising:accessing a session profile stored in memory in a profile repository, the stored session profile comprising log source identifiers mapped to respective model identifiers, each of the model identifiers identifying respective machine-learning models and the log source identifiers identifying input parameters for use by the respective machine-learning models, the model identifiers comprising an initial model identifier, the initial model identifier being flagged as active;
deploying a log projection session in a memory for execution on a computing platform based on the session profile by:
extracting the log source identifiers with a flagged initial model identifier from the session profile;
receiving, as input parameters for the flagged initial model identifier, a log stream from a log source corresponding to at least one of the extracted log source identifiers; and
generating a log projection stream, based on the input parameters of the log stream, with an initial machine-learning model corresponding to the flagged initial model identifier;
calibrating the session profile by:
generating, based on application of historical log data to the machine-learning models, respective performance metrics for the machine-learning models;
identifying a performance criteria for the machine learning models; and
flagging an alternative model identifier included in the session profile as being active in response to the alternative model identifier being associated with a performance metric that satisfies the performance criteria, the alternative model identifier associated, in the session profile, with an alternative machine-learning model and mapped to a respective log source identifier identifying an alternative log source and a corresponding alternative input parameter for use by the respective alternative machine-learning model, wherein flagging the alternative model identifier comprises:
testing predictive performance of the machine-learning models, and
reprioritizing and reflagging the machine-learning models in response to
changing performance of the machine-learning models;
storing the calibrated session profile in the profile repository; and
redeploying the log projection session in the memory of the computing platform based on the stored calibrated session profile by generating the log projection stream by application of an alternative log stream to the alternative machine-learning model instead of application of the log stream to the initial machine-learning model, the alternative log stream from the alternative log source corresponding to the respective log source identifier identifying the corresponding alternative input parameter.

US Pat. No. 10,713,142

METHOD AND DEVICE FOR IDENTIFYING BOTTLENECK CANDIDATE

FUJITSU LIMITED, Kawasak...

1. A method, comprising:transmitting, by one or more information processing devices, communication time information related to processes of a plurality of services included in each of a plurality of tasks and information on the one or more information processing devices that executed the plurality of services, the communication time information including a transmission time of an execution command for each of the plurality of services and a response time corresponding to the transmission time;
receiving, by a computer, the communication time information and the information on the one or more information processing devices;
calculating, for each of the plurality of tasks, a processing time for each of a plurality of groups obtained by grouping services continuously executed in a same information processing devices of the one or more information processing devices based on the received communication time information and the received information on the one or more information processing devices;
calculating, for each of the plurality of tasks, a service processing time for each of the plurality of groups by dividing the calculated processing time for a group by a number of services included in the group, wherein the service processing time is calculated more accurately by subtracting a processing time of a service that waits for a response from a relevant processing time and wherein the service processing time is calculated more quickly by subtracting a transmission time from a reception time;
calculating, for each of the plurality of tasks, an average processing time by averaging the processing times and the service processing times;
extracting a service corresponding to an average processing time among the calculated average processing times from the plurality of services that is greater than or equal to a predetermined threshold; and
outputting, at a display, the extracted service as a bottleneck candidate when the average processing time is greater than or equal to the predetermined threshold.

US Pat. No. 10,713,141

CAPTURING NATIVE APPLICATION CONTENT RENDERING PERFORMANCE

eBay Inc., San Jose, CA ...

1. A method for automatically capturing user-perceived content rendering performance by a native application on a user device, the method comprising:rendering a first content element in a display device at a start time;
repeatedly rendering subsequent content elements and converting the display device content into a succession of video frames;
detecting when the display device content stabilizes at a stop time after which a predetermined time span elapses without further content changes; and
outputting performance data comprising a rendering duration comprising the stop time minus the start time,
wherein a clock in the user device provides the start time and the stop time.

US Pat. No. 10,713,140

IDENTIFYING LATENT STATES OF MACHINES BASED ON MACHINE LOGS

FAIR ISAAC CORPORATION, ...

1. A computer-implemented method for implementation by one or more data processors forming part of at least one computing device, the method comprising:receiving data sets that include a plurality of data instances representing states of one or more components of a computer system, the data instances being generated by one or more separate data set sources that are configured to output a data instance in response to a trigger associated with the one or more components and having associated time information, the data instances comprising text;
generating a list of rare words based on a relative frequency of the rare words in the received data sets;
normalizing the data instances of the data sets by applying one or more rules to the data instances, wherein the one or more rules applied to the data instances to normalize the data instances includes abstracting the rare words on the list of rare words out of the data instances;
separately collating the data instances of the data sets from individual data set sources across individual time elements to generate groups of time-element-specific collated data instances based only on the size of the data instances;
assigning state-types to one or more of the data instance groups;
determining distributions of state-types across the groups of data instances;
generating a list of infrequent state-types based on the determined distributions of state-types across the groups;
detecting and alerting about an unusual pattern in the data sets; and
grouping data instances from individual data set sources based on a similarity distance between a first data instance and a second data instance, the similarity distance corresponding to a weighted sum of numbers of space-separated word insertions, space-separated word deletions, or space-separated word substitutions to transform the first data instance into the second data instance.

US Pat. No. 10,713,139

SYSTEM LEVEL TESTING OF MULTI-THREADING FUNCTIONALITY INCLUDING BUILDING INDEPENDENT INSTRUCTION STREAMS WHILE HONORING ARCHITECTURALLY IMPOSED COMMON FIELDS AND CONSTRAINTS

INTERNATIONAL BUSINESS MA...

1. A computer-implemented method of facilitating testing of a multi-threaded computing environment, said computer-implemented method comprising:obtaining an indication of a number of threads of a core to be tested, wherein the number of threads includes a primary thread and one or more secondary threads, the primary thread being an initial thread of the number of threads to be created, the one or more secondary threads to be spawned from the primary thread;
assigning, by a processor, attributes to the number of threads to be tested, wherein the assigning attributes comprises determining one or more testing attributes selected for testing and setting states for the number of threads to be tested in order to test the one or more testing attributes, the setting the states comprising setting one or more indicators to specify that the one or more testing attributes are selected for testing, wherein at least one state of one thread of the number of threads to be tested is different from at least one state of an other thread of the number of threads to be tested, the at least one state comprising an architecture state, wherein the architecture state of the one thread is different than the architecture state of the other thread, the architecture state of the one thread being based on one architecture having one instruction set architecture and the architecture state of the other thread being based on another architecture having an other instruction set architecture, the other instruction set architecture being different from the one instruction set architecture;
generating a number of instruction streams for the number of threads to be tested, wherein the generating, for an instruction stream of the number of instruction streams, comprises randomly selecting one or more instructions to be included in the instruction stream, in which a presence or absence of one or more functions or attributes is decided based on a selected thread;
executing a respective instruction stream of the number of instruction streams generated for the primary thread to test the primary thread, wherein the executing comprises executing the respective instruction stream to a compare point of the primary thread to generate results, in which, based on reaching the compare point, the generated results are compared to respective expected results of the primary thread to determine whether testing of the primary thread was successful, the generated results being based on the executing the instruction stream; and
wherein the executing the respective instruction stream generated for the primary thread includes spawning, by the primary thread, the one or more secondary threads wherein the one or more secondary threads spawned are based on the indication of the number of threads of the core to be tested.

US Pat. No. 10,713,138

FAILURE DETECTION FOR CENTRAL ELECTRONICS COMPLEX GROUP MANAGEMENT

INTERNATIONAL BUSINESS MA...

1. A system, comprising a processor configured to:issue a first logical partition (LPAR) probe to a hardware management console (HMC) of a central electronics complex (CEC) group, wherein the CEC group comprises a plurality of LPARs;
receive a first response packet from the HMC corresponding to the first LPAR probe, wherein the first response packet comprises health data corresponding to a first LPAR of the plurality of LPARs;
store the health data corresponding to the first LPAR in a first health data entry corresponding to the first LPAR; and
for a second LPAR of the plurality of LPARs that was not included in the first response packet, update a second health data entry corresponding to the second LPAR to indicate that the second LPAR is healthy.

US Pat. No. 10,713,137

MEMORY MODULE

SK hynix Inc., Gyeonggi-...

1. A memory module, comprising:a plurality of first memory ranks that share a first chip select signal and have different chip IDs;
a plurality of second memory ranks that share a second chip select signal and have different chip IDs; and
a rank mapping circuit suitable for mapping a defective first memory rank among the first memory ranks to a defect-free second memory rank among the second memory ranks by mapping the first chip select signal to the second chip select signal and changing a chip ID of the defective first memory rank.

US Pat. No. 10,713,136

MEMORY REPAIR ENABLEMENT

Qualcomm Incorporated, S...

1. A method of memory repair, comprising:receiving, by a decoder, a first memory identifier, wherein the first memory identifier corresponds to a first memory, the first memory including one or more reserve memory cells;
determining, by the decoder, that the first memory identifier corresponds to the first memory;
outputting, by the decoder, a first value on a first conductive path corresponding to the first memory based on determining that the first memory identifier corresponds to the first memory, the first value indicating that the first memory includes at least one defective memory cell;
receiving, by an accumulator separate from the one or more reserve memory cells, the first value on the first conductive path corresponding to the first memory;
storing, by the accumulator, the first value corresponding to the first memory, wherein the accumulator includes a first accumulator circuit for storing the first value; and
outputting, by the accumulator, the first value on a second conductive path connected to a first repair enable input of the first memory.

US Pat. No. 10,713,135

DATA DISASTER RECOVERY METHOD, DEVICE AND SYSTEM

TENCENT TECHNOLOGY (SHENZ...

1. A data disaster tolerance method, comprising:at a computing system having one or more processors and memory:
monitoring each node in a logic unit, the nodes comprising a single master node and two or more slave nodes, wherein the single master node provides read-write service corresponding to a client-side request received by the server, and the two or more slave nodes serve as backup for the single master node;
in accordance with a determination that the master node is abnormal, acquiring log information of the plurality of two or more slave nodes separately, the log information of the two or more slave nodes comprising respective time points of data synchronization between the slave nodes and the master node;
selecting a respective slave node of the two or more slave nodes having the time point of data synchronization closest to a current time as a target node; and
updating a master-slave relationship in the logic unit, including changing a role of the target node to that of the master node.

US Pat. No. 10,713,134

DISTRIBUTED STORAGE AND REPLICATION SYSTEM AND METHOD

Huawei Technologies Co., ...

1. A distributed storage system, comprising:at least one metadata controller, a plurality of input/output (IO) routers, and a plurality of object-based storage device (OSD) nodes, the metadata controller being configured to:
establish at least two partitions corresponding to physical storage resources managed by each OSD node, wherein the at least two partitions are primary partitions, secondary partitions, or any combination of primary and secondary partitions, primary and secondary partitions of a combination of partitions constituting a partition group, the primary partition and the secondary partition of a given partition group being located on different OSD nodes, the OSD node on which the primary partition is located being a primary OSD node of the partition group, and the OSD node on which the secondary partition is located being a secondary OSD node of the partition group;
generate a partition view according to the partition, wherein the partition view comprises information about the OSD node on which each partition of the partition group is located;
send the partition view only to a primary OSD node on which a partition in the partition view is located to update a local partition view; and
determine existence of a faulty OSD node that is not capable of providing an IO service;
determine a partition on the faulty OSD node upon the determination of the existence of the faulty OSD node, update a partition view of a partition group that comprises the partition on the faulty OSD node, and send an updating notification to a primary OSD node in the updated partition view;
one of the plurality of IO routers being an executing IO router and configured to route a received IO request to an OSD node to execute storage of data corresponding to the IO request; and
the primary OSD node being configured to process, according to the updated partition view, replication of the data corresponding to the IO request.

US Pat. No. 10,713,133

LINEAR VIEW-CHANGE BFT

VMware, Inc., Palo Alto,...

1. A method for implementing linear view-change in a Byzantine Fault Tolerant (BFT) protocol running on a distributed system comprising n replicas, wherein no more than f of the n replicas are faulty, and wherein the BFT protocol enables at least 2f+1 of the n replicas to agree on how to sequence execution of a plurality of service operations originating from one or more clients, the method comprising:at a time of performing a view-change from a current view number v to a new view number v+1 in order to reach consensus on a sequence number for a given service operation:
generating, by a replica in the n replicas corresponding to a new proposer for new view number v+1, a PREPARE message comprising a single COMMIT certificate, the single COMMIT certificate being the highest COMMIT certificate the new proposer is aware of; and
transmitting, by the new proposer, the PREPARE message with the single COMMIT certificate to all other replicas in the n replicas.

US Pat. No. 10,713,132

HANDLING MIGRATION IN A VIRTUALIZATION ENVIRONMENT

NUTANIX, INC., San Jose,...

1. A system comprising:a plurality of host machines in a virtualization environment, each of the plurality of host machines comprising a migration controller, wherein the migration controller is configured to:
reserve at least one segment on the plurality of host machines, wherein a total number of the at least one segment that is reserved across the plurality of host machines is greater than a number of the at least one segment that is reserved required by a largest failover-protected virtual machine in the virtualization environment;
migrate a failover-protected virtual machine, upon detecting a failure in an underlying host machine, to another host machine; and
migrate the failover-protected virtual machine back to the underlying host machine upon resolution of the failure.

US Pat. No. 10,713,131

AUTOMATIC SELECTION OF NETWORKS WHEN RECOVERING A VIRTUAL MACHINE

WMware, Inc., Palo Alto,...

1. A method of migrating virtual machines (VMs) from a private data center to a cloud data center, comprising:receiving a request at the cloud data center to replicate a VM from the private data center on the cloud data center;
identifying a source network associated with the VM;
identifying whether there exists a stretched network associated with the source network of the VM;
responsive to determining that there exists the stretched network associated with the source network of the VM, replicating the VM on the stretched network without reconfiguring internet-protocol (IP) settings of the VM; and
responsive to determining that there does not exist the stretched network associated with the source network of the VM, replicating the VM on a default recovery network on the cloud data center.

US Pat. No. 10,713,130

REDUNDANCY METHOD, DEVICE, AND SYSTEM

HUAWEI TECHNOLOGIES CO., ...

1. A redundancy method implemented by a first disaster management function (DMF) device on a first site side, the redundancy method comprising:receiving a first request from a cloud business function (CBF) device, wherein the first request requests to perform redundancy on a first virtual machine (VM) on the first site side, and wherein the first request comprises identification information of the first VM and a recovery point objective (RPO);
determining a maximum allowable transmission delay per unit bandwidth on a link for transmitting input/output (IO) data of the first VM;
determining a difference between the RPO and the maximum allowable transmission delay per unit bandwidth on the link for transmitting the IO data of the first VM;
setting a partial duration of the difference as a reserved delay;
allocating, according to the RPO and based on a remaining duration of the difference, a maximum allowable delay time to each node that the IO data of the first VM passes through in a redundancy process, wherein a sum of the maximum allowable delay time to each node comprises the remaining duration of the difference; and
sending a second request to a second DMF device on a second site side,
wherein the second request requests the second site side to perform the redundancy on the first VM, and
wherein the second request comprises the identification information of the first VM, a maximum allowable delay time of a second replication gateway function (RGF) device on the second site side, and a maximum allowable delay time of an IO writer function (IOWF) device on the second site side.

US Pat. No. 10,713,129

SYSTEM AND METHOD FOR IDENTIFYING AND CONFIGURING DISASTER RECOVERY TARGETS FOR NETWORK APPLIANCES

EMC IP Holding Company LL...

1. A computer-implemented method, executed on a computing system, comprising:identifying one or more disaster recovery requirements for a network appliance, wherein the network appliance includes both storage functionality and compute functionality;
providing the one or more disaster recovery requirements to a plurality of potential disaster recovery targets for the network appliance;
analyzing the plurality of potential disaster recovery targets to determine if any of the potential disaster recovery targets meet the one or more disaster recovery requirements of the network appliance;
if one of the potential disaster recovery targets individually meets the one or more disaster recovery requirements, configuring the potential disaster recovery target as a disaster recovery site for the network appliance, wherein configuring the potential disaster recovery target as a disaster recovery site for the network appliance includes:
maintaining a current copy of data stored within the network appliance on the disaster recovery site, and
maintaining a current copy of one or more virtual machines executed on the network appliance on the disaster recovery site; and
if none of the potential disaster recovery targets individually meets the one or more disaster recovery requirements, configuring a combination of the plurality of potential disaster recovery targets as a disaster recovery site for the network appliance, wherein configuring the combination of the plurality of potential disaster recovery targets as a disaster recovery site for the network appliance includes:
maintaining a current copy of data stored within the network appliance on the disaster recovery site, and
maintaining a current copy of one or more virtual machines executed on the network appliance on the disaster recovery site.

US Pat. No. 10,713,128

ERROR RECOVERY IN VOLATILE MEMORY REGIONS

MICROSOFT TECHNOLOGY LICE...

1. An apparatus comprising:a processor; and
a memory storing machine readable instructions that when executed by the processor cause the processor to:
determine, during a save operation that includes saving of data that includes non-volatile dual in-line memory module-software (NVDIMM-SW) content to a primary location, that a correctable error occurred with respect to the save operation by
determining, for a specified time duration and for a volatile memory region that is associated with the primary location and is represented by a primary volatile DIMM region that is to be used to save the NVDIMM-SW content, that a number of correctable errors including the correctable error exceeds a specified threshold;
based on a determination, for the specified time duration and for the volatile memory region, that the number of correctable errors including the correctable error exceeds the specified threshold and based on the determination that the correctable error occurred with respect to the save operation,
determine a correctable error location,
determine whether the correctable error location maps to the volatile memory region, and
based on a determination that the correctable error location maps to the volatile memory region, identify a reserved location for saving the data, wherein the reserved location is associated with a reserved volatile DIMM region that is to be used to save the NVDIMM-SW content;
save the data from the primary location to the reserved location; and
update metadata to indicate usage of the reserved location as the primary location for the saved data.

US Pat. No. 10,713,127

SYSTEM AND METHOD FOR ESTABLISHING AN ALTERNATE COMMUNICATION PATH BETWEEN A CENTRAL MONITORING STATION AND A CONNECTED SECURITY/CONTROL SYSTEM

ADEMCO INC., Golden Vall...

1. A method of providing an alternate communication path between a central monitoring station and a connected security system, the method comprising the steps of:establishing, by a control panel of the connected security system, a primary communication path directly between the control panel and the central monitoring station;
communicating between the control panel and the central monitoring station via the primary communication path;
monitoring and/or controlling, by the control panel, a plurality of connected electronic devices that fail to include the control panel via a signal connection between the plurality of connected electronic devices and the control panel;
automatically detecting, by the control panel or any of the plurality of connected electronic devices, a failure in the primary communication path;
responsive to detecting the failure in the primary communication path, automatically establishing, by a predefined one of the plurality of connected electronic devices, the alternate communication path between the predefined one of the plurality of connected electronic devices and the central monitoring station such that the alternate communication path bypasses the control panel;
detecting a first event at a first of the plurality of connected electronic devices during the failure in the primary communication path; and
transmitting a first signal from the predefined one of the plurality of connected electronic devices to the central monitoring station via the alternate communication path, the first signal alerting the central monitoring station of the first event detected.

US Pat. No. 10,713,126

AUTOMATIC LOG COLLECTION FOR AN AUTOMATED DATA STORAGE LIBRARY

INTERNATIONAL BUSINESS MA...

1. A method, by one or more processors, for automatic log collection of an automated data storage library, comprising:capturing a snapshot of one or more logs associated with the automated data storage library upon detection of an occurrence of a triggering event within the automated data storage library, the one or more logs including at least error logs, service-related logs, and accessor logs at an appliance-level of the automated data storage library, and logs associated with data storage media stored within the automated data storage library; and
storing the snapshot of the one or more logs by the automated data storage library.