US Pat. No. 10,192,078

INTEGRATED CIRCUIT, DIAGNOSTIC SYSTEM AND DIAGNOSTIC METHOD

SOCIONEXT INC., Yokohama...

1. An integrated circuit that performs radio communication with an external apparatus by transmission or reception of a carrier, the integrated circuit comprising:a processing circuit;
a diagnostic circuit configured to perform a diagnosis of the processing circuit according to a plurality of diagnostic items;
a detector configured to detect a radio signal level; and
a charging circuit configured to store charge for causing the diagnostic circuit to operate, during a period that the detector detects that the radio signal level is a first logic level,
wherein the diagnostic circuit is configured to perform the diagnosis on a first subset of the plurality of diagnostic items by using the charge stored in the charging circuit during a first period that the detector detects that the radio signal level is a second logic level which differs from the first logic level.

US Pat. No. 10,192,077

COMBINED READING APPARATUS FOR IDENTIFYING PRODUCT

HANMI IT CO., LTD., Seou...

1. A combined reading apparatus for identifying a product, the combined reading apparatus comprising:a plate panel configured to recognize Radio Frequency Identification (RFID) tag information, configured such that an antenna adapted to transmit and receive a Radio Frequency (RF) signal to and from an RFID tag is included therein, and formed in a plate shape having predetermined lengths in a horizontal direction, which is a direction from a front thereof to a rear thereof, and a height direction, which is a direction from a top thereof to a bottom thereof;
a connection bar coupled to one side of the plate panel, configured to support the plate panel, and configured to extend from the plate panel in the horizontal direction of the plate panel by a predetermined length;
a grip formed in a bar shape having a predetermined length so as to be held by a hand, spaced apart from the plate panel by a predetermined distance, and coupled to the connection bar;
a control unit configured to control the RF transmission and reception of the antenna; and
an image code reader disposed on one side of the plate panel, and configured to read an optically recognizable image code,
wherein:
the plate panel comprises a mounting part configured to penetrate the plate panel from one surface of the plate panel to a remaining surface of the plate panel, configured to have a predetermined size, and configured to accommodate the image code reader; and
the image code reader is formed in a shape corresponding to that of the mounting part, comprises an image reading unit configured to read the image code and disposed at one of opposite ends of the image code reader disposed on a front side in the horizontal direction, and is rotated within a predetermined angle range around the height direction so that the image reading unit is selectively exposed to the front side.

US Pat. No. 10,192,075

METHOD OF SECRET INFORMATION ENTERING INTO ELECTRONIC DIGITAL DEVICES

ADUCID S.R.O., Brno (CZ)...

1. A method of a secret information entering to an electronic digital device by a user using an input/output device, said method comprising the steps of:assigning, by the electronic digital device, to each of elements (2) of the secret information an element (1) of multimedia information designed for interaction during indirect entering of the secret information, the electronic digital device displays to the user the multimedia information designed for interaction containing elements (1) in such a way that their relation to control elements (5) of the electronic digital device is variable between individual displays; and
selecting, by the user, the elements (1) of the multimedia information designed for interaction assigned to the elements (2) of the secret information in an order corresponding with the order of the elements (2) of the secret information, so by selecting the elements (1) of the multimedia information designed for interaction the user selects the elements (2) of the secret information in given order.

US Pat. No. 10,192,070

SYSTEM AND METHOD FOR PROVIDING CONTROLLED ENVIRONMENT RESIDENT STATUS

1. A method, comprising:receiving a first information request from a communication device;
identifying a first keyword related to correctional facility operations from the first information request to determine that the first information request seeks correctional facility operational information;
determining, based on the first keyword, that transmission of the correctional facility operational information is permitted without an authorization check of the communication device;
fetching the correctional facility operational information from a first memory in response to determining that the first information request seeks correctional facility operational information;
transmitting the correctional facility operational information to the communication device;
receiving a second information request from the communication device;
identifying a second keyword related to personal inmate information from the second information request to determine that the second information request seeks personal inmate information;
determining, based on the second keyword, that an authorization check of the communication device is required prior to transmission of the personal inmate information;
verifying that the communication device is authorized to receive personal inmate information via an authorization scheme in response to determining that the second information request seeks personal inmate information;
fetching the personal inmate information from a second memory in response to the verifying; and
transmitting the personal inmate information to the communication device.

US Pat. No. 10,192,068

REVERSIBLE REDACTION AND TOKENIZATION COMPUTING SYSTEM

Bank of America Corporati...

1. A reversible document tokenization system, comprising:a communications network;
a first computing system including a database storing a plurality of computer executable instructions for applying one or more rules in relation to managing non-public information in electronic documents;
a reversible data tokenization engine comprising a processor and a non-transitory memory device, the non-transitory memory device storing instructions that, when executed by the processor, cause the reversible data tokenization engine to:
identify an electronic document being communicated from a source computing device to a destination computing device over the network;
analyze the electronic document to determine a document type, the source computing device of the electronic document, and the destination computing device to which the electronic document is being communicated;
modify at least a portion of the electronic document by executing the computer executable instructions to apply the one or more rules based on at least one of the document type, the source computing device, or the destination computing device; and
generate two or more keys associated with a modification of the portion of the electronic document, wherein the two or more keys are used to undo the modification to display the original information and wherein a first key of the two or more keys is associated with a first obfuscation layer associated with a first redacted portion of the document and a second key is associated with a second obfuscation layer associated with a second redacted portion of the document.

US Pat. No. 10,192,067

SELF-DESCRIBED SECURITY MODEL FOR RESOURCE ACCESS

Microsoft Technology Lice...

1. A method, comprising:managing an operating system execution environment comprising a normal user mode and a first kernel mode;
managing a secure execution environment comprising a secure user mode and a second kernel mode;
receiving, from a first trustlet executing in the secure user mode of the secure execution environment, a first request to create a secure object within a scenario group, wherein the scenario group is managed by a signer authority;
determining that the first trustlet is a member of the scenario group;
creating the secure object within the scenario group based at least in part on the first request;
denying a process executing within the first kernel mode of the operating system execution environment access to the secure object;
receiving, from a second trustlet executing in the secure user mode of the secure execution environment, a second request to access the secure object;
determining that the second trustlet is a member of the scenario group;
providing the second trustlet access to the secure object;
identifying a code signature associated with the first trustlet;
determining that the signer authority associated with the code signature is permitted to provide a capability to create the secure object; and
wherein the creating is further based at least in part on the determining that the signer authority associated with the code signature is permitted to provide the capability.

US Pat. No. 10,192,066

SEMANTIC RESTRICTION

HEWLETT PACKARD ENTERPRIS...

1. A data sharing system comprising:a processor; and
a non-transitory computer readable medium storing instructions executable by the processor, the instructions comprising:
instructions to identify an environment that satisfies a first level of trust of a first entity and a second level of trust of a second entity, wherein the first entity and the second entity are different devices;
instructions to request access to a set of data associated with the first entity in response to a procedure received from the second entity;
instructions to execute the procedure in the environment, the procedure to request access to the set of data in the environment to classify an instruction of the procedure based on a semantic mapping;
instructions to receive a restriction from the first entity, wherein the restriction modifies the procedure that is executed in the environment, wherein the restriction mapable to a semantic term to limit information that can be accessed in the set of data by the procedure of the second entity;
instructions to track the procedure during execution and produce trace information associated with the semantic mapping; and
instructions to maintain execution of the procedure based on the semantic term associated with the restriction and the semantic mapping associated with the trace information.

US Pat. No. 10,192,065

AUTOMATED INTELLIGENT PROVISIONING OF DATA STORAGE RESOURCES IN RESPONSE TO USER REQUESTS IN A DATA STORAGE MANAGEMENT SYSTEM

Commvault Systems, Inc., ...

1. A data storage management system including features for provisioning data storage resources based on user-submitted requests, the system comprising:a storage manager that executes on a computing device comprising one or more processors and non-transitory computer memory, wherein the storage manager manages storage management operations in the data storage management system;
a database, stored in non-transitory computer memory and associated with the storage manager, for storing information used by the storage manager for managing the storage management operations in the data storage management system;
a media agent that executes on a computing device comprising one or more processors and non-transitory computer memory,
wherein the media agent is associated with one or more data storage devices, and
wherein the media agent tracks storage space allocated at the one or more data storage devices;
wherein the storage manager is programmed to:
initiate discovery operations, using the media agent, to discover operational characteristics of the one or more data storage devices,
import from the media agent and store to the database the discovered operational characteristics of, and the storage space allocated at, the one or more data storage devices,
generate an information management policy that governs provisioning more storage space at, and granting of access to, the one or more data storage devices in response to requests for data storage resources submitted by users of the data storage management system,
receive a request from a user for a first amount of data storage space to be accessed as a data storage resource by a client computing device,
wherein the request also comprises an operational characteristic required of a data storage device providing the first amount of data storage space,
identify a first data storage device that satisfies the request,
based on the information management policy and the operational characteristic in the request, and also based on operational characteristics of and storage space allocated at the first data storage device,
wherein the first data storage device is one of the one or more data storage devices, and
instruct the media agent to provision the first amount of data storage space in the identified first data storage device,
wherein the provisioned first amount of data storage space in the first data storage device becomes accessible as a data storage resource to the client computing device;
wherein the media agent is programmed to provision the first amount of data storage space at the first data storage device as instructed by the storage manager; and
wherein the storage manager is further programmed to: manage storage management operations for the provisioned first amount of data storage space in the first data storage device.

US Pat. No. 10,192,064

METHOD OF SECURITY ACCESS CONTROL FOR HARD DISK AND HARD DISK

HUAWEI TECHNOLOGIES CO., ...

1. A method of security access control for a hard disk, the hard disk comprising an Internet Protocol (IP) interface and a control board, and the method comprising:receiving, by the IP interface, an access data packet of a user;
sending, by the IP interface, the access data packet to the control board;
parsing, by the control board, the access data packet to obtain an authentication data packet, the authentication data packet comprising access permission information of the user;
inspecting the access permission information of the user according to a security policy to determine whether an access of the user is authorized, the security policy being configured to record a correspondence between access permission information of a plurality of users and sector identifiers of sectors on the hard disk;
performing a security check on the access data packet using a security algorithm when the access of the user is authorized; and
allowing, according to a sector identifier, the user to access data in a corresponding sector on the hard disk when the security check is passed.

US Pat. No. 10,192,062

ENCRYPTION FOR XIP AND MMIO EXTERNAL MEMORIES

Cypress Semiconductor Cor...

1. An integrated circuit (IC) device, comprising:a serial interface; and
a controller coupled to the serial interface and configured to communicate with external memory devices over the serial interface, wherein the controller comprises:
a control register configured to indicate an execute-in-place (XIP) mode or a memory-mapped input/output (MMIO) mode; and
a cryptography block configured to encrypt and decrypt XIP data transfers to and from a first external memory device in the XIP mode, and to encrypt and decrypt MMIO data transfers to and from a second external memory device in the MMIO mode.

US Pat. No. 10,192,061

METHOD AND A COMPUTING DEVICE FOR PROVIDING PRIVACY CONTROL IN A SURVEILLANCE VIDEO

Wipro Limited, Bangalore...

1. A method for providing privacy control in a surveillance video, the method comprising:receiving, by a computing device, a surveillance video from a video capturing device;
receiving, by the computing device, an authentication input key from a user of the computing device, wherein the authentication input key is indicative of a privacy level associated with the user, and wherein the authentication input key is replaced with a privacy limit level preset for the computing device when the authentication input key is greater than the privacy limit level;
identifying, by the computing device, one or more regions of interests (ROIs) in the surveillance video based on the received authentication input key; and
masking in real-time, by the computing device, the identified one or more ROIs in the surveillance video for providing privacy control.

US Pat. No. 10,192,059

SYSTEM AND METHOD FOR PROTECTING SYSTEMS FROM ACTIVE CONTENT

VOTIRO CYBERSEC LTD., Te...

23. A computer system for disarming targeted active content in a received input file, the system comprising:a memory device storing a set of instructions; and
a processor configured to execute the set of instructions to:
select targeted active content included in the input file;
alter the targeted active content of the input file in a manner configured to prevent execution of potentially malicious instructions associated with the targeted active content by a rendering application, wherein the targeted active content includes at least one of an automatically invoked subroutine, or programmable instructions executable by the rendering application, or at least one of a word processing or spreadsheet macro, formula, or script, or programmable instructions embedded in the input file according to a portable document format;
create protective active content associated with the targeted active content and configured to invoke the instructions associated with the targeted active content responsive to receipt of a selection of a selectable feature; and configure the input file to include the protective active content and the selectable feature, thereby creating a reconfigured input file.

US Pat. No. 10,192,058

SYSTEM AND METHOD FOR DETERMINING AN AGGREGATE THREAT SCORE

SYMANTEC CORPORATION, Mo...

1. A computerized system comprising:a computer processor;
a memory configured to store instructions, the instructions when executed by the computer processor are operable to:
determine a first threat score and a second threat score respectively corresponding to a first user action and a second user action on one or more computer applications; and
calculate an aggregate threat score for the determined threat scores, wherein calculating the aggregate threat score comprises:
determining, by comparing the first threat score to the second threat score, that the first threat score is greater than the second threat score; and
calculating a margin by subtracting the first threat score from a maximum threat score;
determining a contribution of the second threat score based on the second threat score and the margin; and
summing together the first threat score and the contribution of the second threat score; and
suspend, in response to calculating an aggregate threat score that exceeds a threshold, user activity corresponding to one or more of:
a particular computer user;
a particular computer application; and
a particular user action.

US Pat. No. 10,192,056

SYSTEMS AND METHODS FOR AUTHENTICATING WHOLE DISK ENCRYPTION SYSTEMS

Symantec Corporation, Mo...

1. A computer-implemented method for authenticating whole disk encryption systems, at least a portion of the method being performed by a computing device comprising at least one processor, the method comprising:detecting, by the computing device, an attempt to initiate a boot process on the computing device;
verifying, by the computing device, an initial decryption key;
decrypting, by the computing device, an initial set of software required to boot crucial functions of the computing device using the initial decryption key;
detecting, by the computing device, a secondary device running an authentication application;
receiving, by the computing device, a second decryption key from the authentication application on the secondary device; and
completing the boot process on the computing device based on a security policy associated with the second decryption key.

US Pat. No. 10,192,055

LOG IN/LOG OUT PROCESS FOR EDU MODE

Apple Inc., Cupertino, C...

1. A computer-implemented method, comprising:booting a client device, as a system user, to a login screen of the system user, the client device having a kernel process, wherein booting the client device as the system user comprises generating one or more user processes associated with the system user;
receiving and authenticating login information of a first user;
tearing down the user processes associated with the system user; and
rebooting the user processes of the client device, as the first user, the rebooting including generating one or more user processes associated with the first user, including a first user interface display that is specific to the first user and different from the login screen of the system user, wherein the kernel process remains running during tearing down of the one or more system user processes, the rebooting of the user processes of the client device including the generating of the one or more user processes associated with the first user;
logging out of the client device as the first user;
rebooting the client device, as the system user, to the login screen of the system user, wherein the kernel process remains running during the rebooting of the client device; and
synchronizing data of the first user to a remote storage after the first user has logged out.

US Pat. No. 10,192,054

AUTOMATIC PAIRING OF IO DEVICES WITH HARDWARE SECURE ELEMENTS

Intel Corporation, Santa...

1. A system comprising:an input output (IO) device;
a secure element to,
receive, during a boot process of the system, a first pairing authentication value,
determine whether the first pairing authentication value is received by the secure element prior to a stage of the boot process in which execution of third party code occurs,
determine whether to bypass the first pairing authentication value, wherein the first pairing authentication value is to be bypassed by the secure element when the first pairing authentication value is received by the secure element at a time that is not prior to the stage,
receive a pairing key, and
use the first pairing authentication value and the pairing key to establish a trusted channel between the secure element and the IO device, wherein to establish the trusted channel, the secure element is to derive, from the pairing key, one or more of a shared encryption or a signing key that is used to pass messages between the secure element and the IO device through a host operating system software that forwards the messages; and a pairing agent to,
send, during the boot process and prior to the stage of the boot process, the first pairing authentication value to the secure element,
generate the pairing key in response to a pairing request associated with the IO device,
send the pairing key to the secure element and the IO device, and
erase the pairing key after the pairing key is sent to the secure element and the IO device so that the host operating system software is unaware of the pairing key.

US Pat. No. 10,192,053

METHOD, APPARATUS, SYSTEM, DEVICE AND COMPUTER STORAGE MEDIUM FOR TREATING VIRUS

Baidu Online Network Tech...

1. A method for treating a virus, comprising: determining virus family information corresponding to virus file behavior identified by a client; and issuing a virus removal instruction corresponding to the determined virus family information to the client based on a correlation between the virus family information and the virus removal instruction, the client executing the virus removal instruction to remove a virus file, wherein determining virus family information corresponding to the virus file behavior identified by the behavior information identified by the client; and matching the virus file behavior information with a cloud behavior linker script library to determine virus family information corresponding to malicious virus file behavior, wherein the cloud behavior linker script library includes malicious virus file behavior information of a virus family.

US Pat. No. 10,192,052

SYSTEM, APPARATUS AND METHOD FOR CLASSIFYING A FILE AS MALICIOUS USING STATIC SCANNING

FireEye, Inc., Milpitas,...

1. A system comprising:a non-transitory computer-readable medium to store information; and
a processor communicatively coupled to the non-transitory computer-readable medium, the processor for processing the stored information to:
(i) prior to deconstructing a file, performing a first static scan to determine if content within the file has a prescribed level of correlation with one or more malware identifiers;
(ii) when the content does not have at least the predefined level of correlation with the one or more malware identifiers, deconstruct the file to gain access to an object within the file, and thereafter, perform a second static scan to analyze the object to determine whether the object is suspected of including malware and classify the file with a score indicating a likelihood that the file includes malware when the object is suspected of including malware, and
(iii) when the object remains inaccessible for purposes of performing the second static scan following deconstruction of the file, emulate processing of the object and perform a third static scan on both (1) information provided to the object during emulation and (2) information produced by the object during emulation.

US Pat. No. 10,192,051

DATA ACCELERATION

ACCENTURE GLOBAL SERVICES...

1. A data acceleration apparatus comprising:a processor; and
a memory storing machine readable instructions that when executed by the processor cause the processor to:
receive indications of at least one of
levels of capabilities respectively needed for data movement, data processing, and data interactivity, or
operational parameters associated with the data movement, the data processing, and the data interactivity;
determine, based on an analysis of the received indications of the at least one of
the levels of capabilities respectively needed for the data movement, the data processing, and the data interactivity, or
the operational parameters associated with the data movement, the data processing, and the data interactivity, specifications for the
data movement to include at least one of streaming or batch,
data processing to include at least one of a big data platform, complex event processing (CEP), or an appliance, and
data interactivity to include at least one of an in-memory database (IMDB) or a distributed cache;
generate, based on the determined specifications, a data acceleration architectural layout to meet the at least one of
the levels of capabilities respectively needed for the data movement, the data processing, and the data interactivity, or
the operational parameters associated with the data movement, the data processing, and the data interactivity;
access data that is to be analyzed for an anomaly;
determine, by using the data acceleration architectural layout, whether the data includes the anomaly; and
in response to a determination that the data includes the anomaly, control a device associated with the data.

US Pat. No. 10,192,050

METHODS, SYSTEMS, APPARATUS, AND STORAGE MEDIA FOR USE IN DETECTING ANOMALOUS BEHAVIOR AND/OR IN PREVENTING DATA LOSS

General Electric Company,...

1. A computer-implemented method comprising: receiving, in a processor, information defining a first of a plurality of different actions that may be performed by users wherein the first of the plurality of different actions and a second of a plurality of different actions each comprise copying of one or more files, moving one or more files, deleting one or more files, uploading one or more files, network transferring one or more files, or emailing one or more files that may be performed by users wherein the first action is a different action than the second action: receiving, in a processor, information indicating a relative frequency at which the first action and the second action was performed by each of a plurality of users over each of one or more periods of time; determining, by a processor, a plurality of different characteristic behaviors comprising a first characteristic that defines a relative frequency of a performance of a first action of the plurality the different actions and a second characteristic that defines a relative frequency of a performance of a second action of the plurality the different actions over each of one or more periods of time; receiving, in a processor, information indicating a relative frequency at which the first action and the second action was performed by a user over a period of time; determining, by a processor, a representation of the relative frequency at which the first action and the second action was performed by the user over the period of time as a weighted combination of the first characteristic and the second characteristic; determining, by a processor, a reconstruction error based on (i) the relative frequency at which the first action and the second action was performed by the user over the period of time and (ii) the weighted combination of the first characteristic and the second characteristic; in a case that the reconstruction error is less than a threshold, indicating normal behavior, and in case that the reconstruction error is greater than the threshold, indicating anomalous behavior.

US Pat. No. 10,192,049

DETECTING RETURN-ORIENTED PROGRAMMING PAYLOADS BY EVALUATING DATA FOR A GADGET ADDRESS SPACE ADDRESS AND DETERMINING WHETHER OPERATIONS ASSOCIATED WITH INSTRUCTIONS BEGINNING AT THE ADDRESS INDICATE A RETURN-ORIENTED PROGRAMMING PAYLOAD

The Trustees of Columbia ...

1. A system for detecting the presence of a return-oriented programming (ROP) payload in data, comprising:a hardware processor that:
identifies a potential gadget address space;
determines if a piece of the data corresponds to an address of the potential gadget address space; and
in response to determining that the piece of the data corresponds to an address of the potential gadget address space:
for each instruction of a plurality of instructions beginning at the address:
attempts to execute the instruction;
determines whether at least one of: that the instruction has an invalid execution address; that the instruction is invalid; and that the instruction is privileged;
counts the instruction as part of an instruction count; and
determines whether the instruction count meets at least one threshold;
in response to determining that the instruction count meets the at least one threshold, increases a gadget count; and
indicates that an ROP payload is present in the data in response to the gadget count meeting a threshold greater than one.

US Pat. No. 10,192,047

PROVISIONING OF IDENTITY INFORMATION

Cisco Technology, Inc., ...

1. A method comprising:preparing a file including a set of secrets comprising identity information for one or more instances of virtual machines;
attaching the file to a virtual machine configuration;
launching a virtual machine based on the virtual machine configuration;
providing a key blob including a set of keys used to generate the set of secrets;
pairing a kernel to the key blob by a kernel driver;
upon pairing the kernel to the key blob, reading the set of secrets comprising identity information for the virtual machine into the kernel of the virtual machine using the set of keys from the paired key blob;
registering the identity information for the virtual machine with a kernel service;
ejecting the attached file from the virtual machine configuration; and
accessing the identity information for the virtual machine by an application running on the virtual machine,
wherein the identity information for the virtual machine is used by the application when the kernel service requires identity information.

US Pat. No. 10,192,046

UNLOCKING CONTROL METHOD AND APPARATUS FOR INTELLIGENT TERMINAL

TENCENT TECHNOLOGY (SHENZ...

1. An unlocking control method for an intelligent terminal, comprising:detecting, when an intelligent terminal enters an unlocking interface, a touch gesture on a touch display of the intelligent terminal; and
determining whether a trajectory node of the detected touch gesture and a stay time on the trajectory node are the same as a predetermined trajectory node and a predetermined stay time on the trajectory node which are stored by the intelligent terminal, and if same, unlocking the intelligent terminal;
wherein the determining whether a trajectory node of the detected touch gesture and a stay time on the trajectory node are the same as a predetermined trajectory node and a predetermined stay time on the trajectory node specifically comprises:
presetting an unlocking flag bit, wherein an initial state of the unlocking flag bit is a correct state; and
performing the following operations on an nth trajectory node from a first trajectory node of the detected touch gesture:
A. determining whether the nth trajectory node is the same as a predetermined nth trajectory node, wherein n is a natural number starting from 1, and if not same, setting the unlocking flag bit to an incorrect state, and performing subsequent step D, or if same, turning to step B;
B. determining whether a stay time of the touch gesture on the nth trajectory node is the same as a predetermined stay time on the nth trajectory node, and not same, setting the unlocking flag bit to an incorrect state, and performing subsequent step D, or if same, turning to step C;
C. continuing to detect a next trajectory node of the touch gesture, if the next trajectory node of the touch gesture is detected, returning to step A, and if it is detected that the touch gesture is ended, turning to step D; and
D. determining whether the unlocking flag bit is in a correct state, and if in a correct state, determining that the trajectory node of the detected touch gesture and the stay time on the trajectory node are the same as the predetermined trajectory node and the predetermined stay time on the trajectory node, or otherwise, determining that the trajectory node of the detected touch gesture and the stay time on the trajectory node are not the same as the predetermined trajectory node and the predetermined stay time on the trajectory node.

US Pat. No. 10,192,045

ELECTRONIC DEVICE AND METHOD FOR AUTHENTICATING FINGERPRINT IN AN ELECTRONIC DEVICE

Samsung Electronics Co., ...

1. An electronic device comprising:a memory including a fingerprint information database;
an input interface configured to receive fingerprint information of a fingerprint inputted by a user; and
a processor coupled to the memory and the input interface, the processor configured to:
when an authentication for the fingerprint information is successfully performed based on registered authentication information, generate similarity information of the fingerprint information,
control the memory to store the generated similarity information in conjunction with an authentication time of the received fingerprint information in the fingerprint information database,
when an event for identify a change in the fingerprint of the user occurs, obtain a plurality of fingerprint information stored in the fingerprint information database during a predetermined authentication time interval,
select at least one fingerprint information of the obtained plurality of fingerprint information based on the similarity information for each of the obtained plurality of fingerprint information, and
control to update the registered authentication information using the selected at least one fingerprint information.

US Pat. No. 10,192,044

ELECTRONIC APPARATUS AND METHOD FOR CONTROLLING FUNCTIONS IN THE ELECTRONIC APPARATUS USING A BIO-METRIC SENSOR

Samsung Electronics Co., ...

1. An electronic device comprising:a biometric sensor configured to detect at least one contact signal from at least one biometric electrode; and
a processor configured to:
determine whether the at least one contact signal received from the biometric sensor includes biological characteristics,
execute a biometric function in response to a determination that the contact signal is a biometric input including the biological characteristics,
execute an application function of the electronic device in response to a determination that the contact signal is an electrode input when the contact signal does not include the biological characteristics,
identify, when the contact signal does not include the biological characteristics, a position of a biometric electrode in which the contact signal is generated, and
identify the application function mapped to the identified position.

US Pat. No. 10,192,042

USER VERIFYING METHOD, TERMINAL DEVICE, SERVER AND STORAGE MEDIUM

TENCENT TECHNOLOGY (SHENZ...

1. A user verifying method, comprising:receiving, by a terminal device, a motion instruction from a server;
displaying the motion instruction on a display interface of the terminal device;
displaying a time countdown of a preset period together with the motion instruction on the display interface of the terminal device;
obtaining a sensed data of a gyroscope equipped in the terminal device after the motion instruction is received and before the time countdown ends;
sending the sensed data obtained by the terminal device to the server; and
receiving a verification result from the server, the verification result being determined according to whether the motion trails of the terminal device meet a requirement of the motion instruction based on the sensed data,
wherein:
the motion instruction includes: performing a first movement within a first time period and performing a second movement within a second time period after the first time period; and
sending the sensed data comprises: sending the sensed data carrying motion trails of both the first movement and the second movement to the server.

US Pat. No. 10,192,040

SOFTWARE FEATURES LICENSING AND ACTIVATION PROCEDURE

Corning Optical Communica...

1. A method for licensing software for a remote site of a plurality of sites, the method comprising:authorizing at least one first software feature for the remote site of the plurality of sites;
obtaining a control unit ID for the remote site of the plurality of sites;
correlating the at least one first software feature with the control unit ID in a downloadable features activation file;
obtaining another control unit ID for another remote site of the plurality of sites;
correlating the at least one first software feature with the another control unit ID in the downloadable features activation file;
removing at least one second software feature previously authorized for the remote site of the plurality of sites from the downloadable features activation file;
downloading the features activation file at the remote site of the plurality of sites;
activating the at least one first software feature according to the features activation file;
deactivating the at least one second software feature; and
downloading the at least one first software feature from a software database over a network.

US Pat. No. 10,192,039

SYSTEM FOR CONTEXT-BASED DATA PROTECTION

Microsoft Technology Lice...

1. A method in a computing device, comprising:storing data in a storage device of the computing device, the stored data stored with assigned parameters including sensitivity level, an associated data protection response selected from a plurality of data protection responses that includes a soft delete and a hard delete, and a contextual trigger configured to cause the assigned data protection response to be enacted;
subsequent to said storing, monitoring for an occurrence of the assigned contextual trigger;
comparing the occurred contextual trigger to the assigned contextual trigger to determine a match; and
enacting the data protection response associated with the data in response to the determined match.

US Pat. No. 10,192,038

PROCESS FOR DETERMINING THE DISTILLATION CHARACTERISTICS OF A LIQUID PETROLEUM PRODUCT CONTAINING AN AZEOTROPIC MIXTURE

Butamax Advanced Biofuels...

1. A process for determining the distillation characteristics of a liquid petroleum product that contains an azeotropic mixture of an oxygenated or nitrogen-containing component and at least one petroleum blending component comprising:(a) defining a relationship between the boiling points of hydrocarbons of the liquid petroleum product and the concentration of each such hydrocarbon in an azeotrope with the oxygenated or nitrogen-containing component;
(b) defining a relationship between the boiling points of the hydrocarbons and the boiling points of the azeotropes;
(c) generating a boiling point curve of narrow volume percent distillate fractions and distillation temperature for each such volume percent distillate fraction;
(d) for each volume percent distillate fraction from step (c)
(i) determining the total concentration of hydrocarbons in the distillate fraction;
(ii) determining the amounts of the azeotropic mixture and of the oxygenated or nitrogen-containing component in each such volume percent distillate fraction and
(iii) determining the boiling point of the azeotropic mixture that corresponds to each such volume percent; and
(e) correlating for each volume percent distillate fraction the amount of the azeotropic mixture in the distillate fraction from step (d)(ii) with the boiling point from step (d)(iii), and combining such correlations to thereby determine the distillation characteristics of the liquid petroleum product.

US Pat. No. 10,192,037

REPORTING SYSTEM AND METHOD FOR INGESTIBLE PRODUCT PREPARATION SYSTEM AND METHOD

Elwah LLC, Bellevue, WA ...

1. A system, comprising:a vending machine, including at least:
at least one production machine configured for preparation of one or more ingestible products incorporating one or more controlled substances;
at least one processing device; and
at least one non-transitory computer-readable medium including at least one or more instructions which, when executed by the at least one processing device, configure the at least one processing device as at least:
circuitry configured for receiving at least one identity of at least one particular living being;
circuitry configured for receiving directive information relating to the at least one particular living being, the directive information including at least one or more indications of identity of an issuer of the directive information and one or more indications of at least one particular ingestible product including at least one controlled substance for preparation via the at least one production machine, the at least one particular ingestible product designated by the issuer of the directive information for ingestion by the at least one particular living being;
circuitry configured for obtaining at least one verification of controlled substance directive issuance authorization of the issuer of the directive information;
circuitry configured for obtaining at least one verification of authorship of the directive information by the issuer;
circuitry configured for controlling the at least one production machine to prepare the at least one particular ingestible product, including at least incorporating the at least one controlled substance, based at least partially on (i) the circuitry configured for receiving the at least one identity, (ii) the circuitry configured for receiving the directive information, (iii) the circuitry configured for obtaining the at least one verification of controlled substance directive issuance authorization, and (iv) the circuitry configured for obtaining the at least one verification of authorship;
circuitry configured for recording occurrence information indicative of the preparation of the at least one particular ingestible product via the at least one production machine; and
circuitry configured for controlling at least one dispensing, by the at least one production machine, of the at least one prepared particular ingestible product for collection by the at least one particular living being.

US Pat. No. 10,192,033

CAPTURING DATA FOR INDIVIDUAL PHYSIOLOGICAL MONITORING

Monument Peak Ventures, L...

1. A method comprising:receiving, via a processor, health data, semantic data, and identification data from a subject;
receiving, via the processor, subject image data;
measuring, via the processor, environmental factors;
perform, via the processor, data analysis on the health data, semantic data, and identification data received and the environmental factors;
determining, via the processor, nominal input capture parameters and wellness parameters;
preparing, via the processor, a reference image based on the determined nominal input capture parameters, wellness parameters, and data analysis; and
comparing a received image with the reference image, and determining possible causes and interventions of identified health issues based on comparing the received image with the reference image.

US Pat. No. 10,192,032

SYSTEM AND METHOD FOR SAVING MEDICAL IMAGING DATA

General Electric Company,...

1. A method, comprising:acquiring medical imaging data with a medical imaging device;
tagging a subset of the acquired medical imaging data with a first tag of a plurality of possible tags based on one or more features of the acquired medical imaging data, the one or more features including an anatomical feature;
storing the subset of the acquired medical imaging data in a memory operatively coupled with the medical imaging device responsive to the first tag matching a designated tag; and
not storing a remainder of the acquired medical imaging data, the remainder not tagged with the first tag, to reduce an amount of data stored in the memory.

US Pat. No. 10,192,030

METHODS FOR ACCURATELY MEASURING ENZYME ACTIVITY

1. A method for quantifying enzyme activity, comprising:(a) contacting samples, wherein each of the samples may contain an enzyme, with a substrate under conditions in which the enzyme, when present in each sample, converts the substrate into a product, thereby generating reactions;
(b) contacting each of the reactions with a set of internal standards, wherein each of the internal standards includes a different amount of product;
(c) simultaneously quantifying under identical conditions, after (b), the amount of product converted from the substrate and the amount of each of the internal standards in each of the reactions;
(d) generating a standard curve for each of the reactions from the internal standards in each of the reactions; and
(e) quantifying enzyme activity for each of the reactions according to each of the standard curves for each of the reactions.

US Pat. No. 10,192,029

SECURE AND SCALABLE MAPPING OF HUMAN SEQUENCING READS ON HYBRID CLOUDS

1. A method of mapping a plurality of DNA sequence reads to a reference genome, the method comprising:partitioning each of the plurality of DNA sequence reads into a plurality of seeds using computing resources of a private cloud;
combining at least two seeds of the plurality of seeds to generate a combined seed using the private cloud computing resources;
encrypting, by the private cloud computing resources, the combined seed using a keyed encryption algorithm to produce a keyed-hash value of the combined seed;
transmitting the keyed hash value representing the combined seed from the private cloud computing resources to computing resources of a public cloud, wherein the keyed hash value is usable to search against a plurality of keyed hash values derived from a reference genome;
receiving, by the private cloud computing resources, from the public cloud computing resources, data indicating positions where the reference genome matches the at least two seeds of the combined seed; and
extending, using the private cloud computing resources, each of the at least two seeds at each of the positions where the reference genome matches the at least two seeds of the combined seed to determine whether the DNA sequence read corresponding to each of the at least two seeds aligns with the reference genome at that position.

US Pat. No. 10,192,026

SYSTEMS AND METHODS FOR GENOMIC PATTERN ANALYSIS

Seven Bridges Genomics In...

1. A method for analyzing a genetic sequence, the method comprising:obtaining a reference graph representing a genomic sequence and known variation in the genomic sequence, in which substrings of the genomic sequence and known variation are stored in objects connected to one another to form a plurality of paths through the graph, wherein at least one path through the graph represents substantially an entire chromosome;
identifying a data string for each path of the plurality of paths through the graph, each data string representing a concatenation of the substrings of genomic sequence and known variation in the genomic sequence stored in objects through the path;
for each data string:
identifying a plurality of k-mers in the data string; and
listing each identified k-mer's location within the graph in an entry in a search index, wherein that entry is indexed according to a hash of that k-mer and contains locations of all k-mers having that index;
obtaining a query sequence;
identifying a plurality of query k-mers from the query sequence;
determining the locations of at least one query k-mer within the graph by reading search index entries indexed according to hashes of query k-mers; and
identifying portions of the graph in which a number of potential matches with different query k-mers is equal to or exceeds a threshold number as candidate targets within the graph for alignment of segments of the query sequence.

US Pat. No. 10,192,023

MODEL COMPARISON TOOL

General Electric Company,...

1. A system comprising:a display;
a processor configured to:
receive a first computer-aided design (CAD) model representing at least one part of a machine;
receive a second CAD model representing the at least one part of the machine;
compare a first dataset indicative of a first set of position values of a first set of elements of the first CAD model to a second dataset indicative of a second set of position values of a second set of elements of the second CAD model to identify a plurality of differences between the first CAD model and the second CAD model, wherein the first set of elements directly correspond to the second set of elements;
populate a discrepancy list comprising the plurality of differences between the first CAD model and the second CAD model;
receive an input to review the discrepancy list;
display a visualization comprising the discrepancy list via the display in response to receiving the input;
receive a second input configured to disregard a first difference of the plurality of differences in discrepancy list;
receive a third input to verify a second difference of the plurality of differences, wherein the second difference has not been disregarded; and
update the visualization to include an updated discrepancy list comprising a portion of the plurality of differences, wherein each difference of the portion of the plurality of differences has been verified.

US Pat. No. 10,192,021

GENERATING AND INSERTING METAL AND METAL ETCH SHAPES IN A LAYOUT TO CORRECT DESIGN RULE ERRORS

CADENCE DESIGN SYSTEMS, I...

1. A method for implementing an integrated circuit design using a design tool, the method comprising:identifying, using the design tool, a plurality of shapes in a post-placement layout of the integrated circuit design;
determining, using the design tool, a legal area for a trim shape for the identified plurality of shapes based on analysis of one or more design constraints for implementing the integrated circuit design, wherein the legal area is a contiguous area adjacent to certain of the identified plurality of shapes that are aligned in at least two different tracks in a single mask of the integrated circuit design; and
creating, using the design tool, the trim shape within the legal area and updating the integrated circuit design by adding the created trim shape to the post-placement layout of the integrated circuit design.

US Pat. No. 10,192,020

METHODS, SYSTEMS, AND COMPUTER PROGRAM PRODUCT FOR IMPLEMENTING DYNAMIC MANEUVERS WITHIN VIRTUAL HIERARCHIES OF AN ELECTRONIC DESIGN

Cadence Design Systems, I...

1. A computer implemented method for implementing dynamic maneuvers within virtual hierarchies of an electronic design, comprising:executing, at a virtual hierarchy maneuver module coupled to a micro-processor of a computing system, a sequence of instructions to perform a process, the process comprising:
identifying or generating a plurality of figure groups at one or more virtual hierarchies in a layout portion;
receiving a request to descend into or ascend from a figure group at a virtual hierarchy of the one or more virtual hierarchies; and
updating a layout view into an updated layout view at least by descending into or ascending from the figure group and by exposing layout design details in the figure group for native editing according to the request to descend into or ascend from the figure group while reducing or avoiding cluttering a user interface showing the layout view and reducing or avoiding network roundtrips for checking in modified physical design structures at one or more physical hierarchies into a design database via a computer network for the native editing of the layout view.

US Pat. No. 10,192,018

METHOD AND SYSTEM FOR IMPLEMENTING EFFICIENT TRIM DATA REPRESENTATION FOR AN ELECTRONIC DESIGN

Cadence Design Systems, I...

1. A method implemented with a processor, comprising:identifying a requirement for representing a gap formed by at least a layout object as a gap shape object in an electronic design of an electronic circuit;
generating or updating a structure in memory or a storage device of a computing system at least by maintaining one or more attributes of the gap shape object in at least the layout object in the structure while complying with the requirement, rather than separately maintaining the gap shape object as a persistent object in the structure or other structures, wherein
the gap correlates to a trim metal shape in a trim mask for multi-patterning manufacturing of the electronic design, and
the structure is populated with shape properties of both the layout object and the gap such that the one or more gap shape attributes in the structure include gap shape properties for the gap;
implementing, at a reconstruction module stored at least partially in memory of and functioning in conjunction with at least one microprocessor of a computing system, one or more modifications to the layout object in the layout, wherein the one or more modifications to the layout object trigger an implementation of at least one modification to the one or more gap shape attributes corresponding to the trim metal shape, without separate edits to the gap or the gap shape in the layout for compliance with the requirement; and
generating, at the reconstruction module, a trim mask layout and causing multi-patterning lithography equipment to use at least the trim mask layout to trim the electronic circuit with the at least one modification to the trim metal shape to form at least the gap by referencing at least the structure for the layout object while satisfying the requirement.

US Pat. No. 10,192,017

DRIFT COMPENSATION

1. A method associated with an electric circuit manufactured in accordance with a predefined electric circuit design and defining a frequency response between an input signal and an output signal in a frequency range, the method comprising:ii) defining, based on measurements on a test lot of other electric circuits also manufactured in accordance with the electric circuit design, a design-specific model for the electric circuit design, the design-specific model describing a frequency response of the electric circuit design in dependence of at least one parameter affecting operation of the electric circuit design; and
for the electric circuit:
iii-1) obtaining a unit-specific frequency response as a frequency response for the electric circuit measured at a certain value of the at least one parameter;
iii-2) fitting the design-specific model at said certain value of the at least one parameter to said unit-specific frequency response, whereby a unit-specific model for the electric circuit is obtained describing a frequency response for the electric circuit in dependence of the at least one parameter; and
iii-3) storing, in association with the electric circuit, data representing the unit-specific model such that the electric circuit is operable in conjunction with a compensation stage, which is configured to retrieve said data representing the unit-specific model, determine a present value of the at least one parameter and, based on said present value and said unit-specific model, compensate a deviation between a frequency response of said electric circuit and a reference frequency response, wherein the reference frequency response is independent of the at least one parameter.

US Pat. No. 10,192,016

NEURAL NETWORK BASED PHYSICAL SYNTHESIS FOR CIRCUIT DESIGNS

XILINX, INC., San Jose, ...

1. A method of physical synthesis for a circuit design, the method comprising:determining, using a processor, features relating to a signal path of the circuit design not meeting a timing requirement;
processing the features through a first neural network model using the processor, wherein the first neural network model is trained to indicate an effectiveness of a first physical synthesis optimization; and
selectively performing, using the processor, the first physical synthesis optimization for the signal path based upon a result from the first neural network model.

US Pat. No. 10,192,015

METHOD OF ESTIMATING A YIELD OF AN INTEGRATED CIRCUIT AND METHOD OF OPTIMIZING A DESIGN FOR AN INTEGRATED CIRCUIT

SAMSUNG ELECTRONICS CO., ...

1. A method of estimating a yield of an integrated circuit, the method comprising:obtaining, from a design of the integrated circuit, slack values relating to timing paths included in the integrated circuit;
extracting critical paths from the timing paths included in the integrated circuit by using the slack values relating to the timing paths to perform a static timing analysis for the integrated circuit;
determining, for each respective one of the critical paths, a corresponding criticality sigma level;
grouping the critical paths into criticality sigma level groups according to the criticality sigma levels of the critical paths;
determining the yield of the integrated circuit based on a number of the critical paths in each criticality sigma level group of the criticality sigma level groups;
using a result of the determining the yield to modify the design of the integrated circuit; and
manufacturing the integrated circuit based on the modified design of the integrated circuit.

US Pat. No. 10,192,014

CIRCUIT DESIGN SUPPORT APPARATUS AND COMPUTER READABLE MEDIUM

MITSUBISHI ELECTRIC CORPO...

1. A circuit design support apparatus comprising:processing circuitry to:
specify, among processes indicated in a scheduling result file indicating that one or more processes are assigned to each of a plurality of process steps to be executed sequentially, a target process that is a process performing computation and an identical-type process that is a process assigned to a process step to be executed after a process step to which the target process is assigned and performing computation which is identical in type to the target process;
specify, as a destination step, a process step in which a computing unit can be shared between the target process and the identical-type process when the target process is assigned thereto; and
generating a schedule change file by changing a description of the scheduling result file to a description in a state in which the target process has been assigned to the destination step,
wherein the scheduling result file is generated by a high level synthesis of source code,
wherein the processing circuitry specifies the destination step by determining one of the process steps that is
executed after execution of the process step to which the target process has been assigned and before execution of the process step to which the identical-type process has been assigned, and
logically affected by the target process, and
wherein the changed description reduces a number of computing units required in a semiconductor integrated circuit that is fabricated according to the scheduling change file by increasing a number of memories used in the semiconductor integrated circuit.

US Pat. No. 10,192,013

TEST LOGIC AT REGISTER TRANSFER LEVEL IN AN INTEGRATED CIRCUIT DESIGN

Cadence Design Systems, I...

1. A method comprising:accessing, using one or more processors of a computing device, an integrated circuit design at register transfer level (RTL), the integrated circuit design at the RTL having a tree structure hierarchy organizing a plurality of RTL modules in the integrated circuit design at the RTL, wherein the plurality of RTL modules includes a root level RTL module at a root level of the tree structure hierarchy and a plurality of leaf level modules at a first leaf level of the tree structure hierarchy;
adding, using the one or more processors, design for test logic at the RTL into the integrated circuit design at the RTL, the design for test logic at the RTL including a port that connects to a hierarchical reference with a hierarchical path in the tree structure hierarchy to a part of the integrated circuit design at the RTL; and
performing, using the one or more processors, logic equivalent checking of at least one of:
the integrated circuit design at the RTL prior to the adding the design for test logic at the RTL into the integrated circuit design at the RTL;
the integrated circuit design at netlist level after the adding the design for test logic at netlist level; or
the integrated circuit design at the RTL after the adding the design for test logic at the RTL into the integrated circuit design at the RTL.

US Pat. No. 10,192,012

PSEUDO-INVERTER CONFIGURATION FOR SIGNAL ELECTROMIGRATION ANALYSIS

1. A computer-implemented method for determining a signal electromigration effect in a circuit, comprising:obtaining, with a circuit design tool, a partition netlist from a partition of an integrated circuit netlist, the partition netlist comprising an identification of a plurality of circuit components;
identifying, with a characterization tool, a reference netlist that couples a first input of the partition netlist with an output of the partition netlist;
identifying, with the characterization tool, a complementary netlist that couples a second input of the partition netlist with the output of the partition netlist, wherein the complementary netlist is logically independent from the reference netlist;
modifying the partition netlist to couple the reference netlist and the complementary netlist in an inverting configuration wherein the output of the partition netlist is a same output when the first input is a logical inverse of the second input;
providing an electromagnetic pulse to at least one of the first input or the second input of the partition netlist to induce a current through one of the plurality of circuit components; and
determining an electromigration effect from the current on the one of the plurality of circuit components.

US Pat. No. 10,192,011

METHOD AND APPARATUS FOR WAVE FIELD ESTIMATION

The United States of Amer...

1. A method for estimating wave field characteristics in three dimensions (3D) comprising the following steps:using a 3D ray trace model to estimate radio frequency (RF) wave front paths as the RF wave fronts propagate through Earth's atmosphere from a transmitter to a plurality of given points within a geographical area of interest, wherein the 3D ray trace model also estimates each point's phase path, group path, apogee, and hop count;
constructing a ray bundle for each point, wherein each ray bundle has a center axis, a polarization that varies along the bundle's axis, and a field amplitude that varies as a two-dimensional Gaussian curve with distance from the bundle's center axis;
sorting the points into mode constellations according to the points' hop count and apogee characteristics;
constructing a Delaunay triangulation of each mode constellation;
computing a covariance estimation for each triangle in each mode constellation, wherein nearest neighbor points in the Delaunay triangulation are included in the covariance estimation, and the semi-major and semi-minor axes of each ellipse respectively define characteristic scales of the ray bundles' Gaussian cross-section and orientation in space;
estimating the wave field characteristics over the entire geographical area of interest based on a summation of constituent ray bundles' characteristics within each mode constellation; and
adjusting an RF transmitter to compensate for atmospheric conditions based on the estimated wave field characteristics.

US Pat. No. 10,192,009

SIMULATION OF PHOTOVOLTAIC MODULES

IMEC VZW, Leuven (BE)

1. A method for calculating a performance of a photovoltaic module comprising at least a first photovoltaic cell and a second photovoltaic cell, the method comprising:calculating a heat flow between the first photovoltaic cell and the second photovoltaic cell, wherein calculating the heat flow includes using a first thermal equivalent circuit of the first photovoltaic cell and a second thermal equivalent circuit of the second photovoltaic cell, wherein at least one node of the first thermal equivalent circuit is connected to a corresponding node of the second thermal equivalent circuit by a thermal coupling resistance.

US Pat. No. 10,192,008

DETECTING STATIC AND DYNAMIC OBJECTS

Bayerische Motoren Werke ...

1. A method for detecting static and dynamic objects and controlling a vehicle, the method comprising the acts of:a) distributing new particles in a particle card at a specific time step (t), wherein the particle card is a two-dimensional arrangement of cells and each cell represents a specific location, each particle is depicted by a velocity vector, and the new particles are distributed in the particle card by a random process;
b) calculating a location of the particles at a later point-in-time (t+?t) by a predetermined time step (?t) vis-a-vis the specific point-in-time (t) from step a) and assigning the particles to the cells of the particle card that correspond to the newly calculated location;
c) measuring a location of real objects via a sensor in an area including the locations of the particle card;
d) filtering the particles in the individual cells as a function of the objects measured, and in the cells in which no object was measured more particles are deleted than in cells in which an object is located;
e) repeating steps a) through d) and, in step a), adding new particles to the particles not deleted in step d),
wherein in step a), static particles having zero velocity are also added, and
f) detecting in real-time the location and velocity of the static and dynamic objects and controlling the vehicle in a partially automated or fully automated manner based on the detection, and
wherein the cells of the particle card are classified as cells including: (i) static objects when their particles have a velocity variance and/or a direction variance that is greater than a first predetermined threshold value and (ii) dynamic objects when their particles have the velocity variance and/or the direction variance that is less than a second predetermined threshold value, the second predetermined threshold value being smaller than the first predetermined threshold value.

US Pat. No. 10,192,007

SYSTEM AND METHOD FOR ESTIMATING MATERIAL DENSITY

General Electric Company,...

1. A system for estimating the density of a material in an annular space, the system comprising:(a) a physical tool configured to be accommodated within and move within a channel of an inner conduit disposed within an outer conduit, the inner conduit and the outer conduit together defining an annular space containing a material characterized by one or more densities, the physical tool comprising a radiation source and a plurality of radiation detectors, the radiation detectors being configured to detect scattered photons resulting from interaction of the material in the annular space with radiation from the radiation source;
(b) a data transmission device coupled to the plurality of radiation detectors and configured to transmit detector data; and
(c) one or more computer processors linked to the data transmission device and configured to receive the detector data, the one or more computer processors generating a set of Monte Carlo simulations based on the geometry of the inner and outer conduits, the composition of the inner and outer conduits, the relative location of the physical tool with respect to the inner and outer conduits, the geometry of the physical tool and a set of hypothetical materials of different densities, the one or more computer processors being configured to perform a principal component analysis on the set of Monte Carlo simulations to generate a principal component analysis model of the detector data, the one or more computer processors being configured to apply the principal component analysis model to the detector data to estimate the density of the material in the annular space at one or more locations within the annular space based upon the principal component analysis model and the detector data using an optimization technique.

US Pat. No. 10,192,006

SIMULATION CONSTRUCTION METHOD FOR THE MEASUREMENT OF CONTROL ROD INSERTION TIME

1. A method for improving design or operation of a nuclear reactor having at least one control rod that falls by gravity toward a core of the nuclear reactor, the method comprising:determining an actual insertion time value when the control rod falls by gravity inside the nuclear reactor;
performing a simulation of a control rod falling by gravity toward a core of the nuclear reactor, said performing including:
three-dimensionally modeling an inside wall of the nuclear reactor, the control rod accommodated inside the nuclear reactor, a guide tube guiding the control rod, an impact absorption tube located at the bottom of the guide tube with a diameter smaller than the diameter of the guide tube, a first flow hole located in the inside wall of the guide tube, and a second flow hole located at the bottom of the impact absorption tube;
configuring a flow field by dividing the inside of the nuclear reactor into a plurality of cells, wherein the flow field is configured by a variable grid system comprising a plurality of variable cells having a configuration that changes as the control rod changes location in the path along which the control rod passes, and by an aligned grid system comprising a plurality of fixed cells which maintain their configuration regardless of the location change of the control rod;
calculating a first simulation estimated value for the insertion time until the control rod is inserted into the impact absorption tube, wherein calculating the first simulation estimated value is determined by analyzing a thermal-hydraulic phenomenon using three-dimensional computational fluid dynamics (CFD) codes; and
calculating a second simulation estimated value, wherein the second simulation estimated value is determined by changing a size of one or more of the variable cells and/or a size of one or more of the fixed cells, when the first simulation estimated value is compared with the determined actual insertion time value, and an error between the first simulation estimated value and the actual insertion time value is determined to be out of a reference range; and
using the second simulation estimated value to change the size of the one or more variable cells and/or a size of one or more of the fixed cells, when the second simulation estimated value is compared with the determined actual insertion time value, and an error between the second simulation estimated value and the actual insertion time value is determined to be out of a reference range.

US Pat. No. 10,192,003

METHOD OF ALIGNING INTRA-ORAL DIGITAL 3D MODELS

3M INNOVATIVE PROPERTIES ...

1. A method for aligning a digital 3D model of teeth, comprising steps of:receiving a digital 3D model of teeth represented by a 3D mesh in random alignment;
computing a grid of vectors aligned with a desired axis within a 3D coordinate system;
projecting the vectors through the mesh to count a number of intersections of the vectors with faces of the mesh;
computing a cost function for the mesh based upon the number of intersections; and
rotating the mesh and repeating the projecting and the computing the cost function steps until the cost function is maximized to align the mesh with the desired axis,
wherein the computing the cost function step comprises computing as the cost function f(?)=(sum(n==1)/sum(n>1)), where ? is the desired axis, and n is a number of the faces each of the vectors intersects.

US Pat. No. 10,192,002

METHOD FOR DESIGNING AND MANUFACTURING A BONE IMPLANT

DePuy Synthes Products, I...

1. A method comprising the steps of:receiving an anatomical image representative of an anatomical structure;
generating an implant image associated with the anatomical structure, the implant image defining an inner surface that faces the anatomical image, and a plurality of slice locations spaced apart along a length of the implant image, each slice location defining a respective slice of the implant image that is fitted to the anatomical image;
determining a plurality of distances measured from respective locations of the inner surface to the anatomical image, the distances representative of a superimposition of the implant image over the anatomical image, wherein the respective locations comprise locations between the slices that are fitted to the anatomical image;
comparing the distances to a tolerance;
when at least a select one of the plurality of distances is not within the tolerance, repositioning the inner surface so as to change the at least select one of the plurality of distances, wherein repositioning comprises adding a new slice location to define a new slice of the implant image that is fitted to the anatomical image;
converting the implant image having the new slice location into manufacturing instructions for fabricating an implant; and
fabricating the implant in accordance with the manufacturing instructions converted from the implant image having the new slice location.

US Pat. No. 10,192,001

VISUALIZING CONVOLUTIONAL NEURAL NETWORKS

SAS INSTITUTE INC., Cary...

1. A system for visualizing convolutional neural networks, the system comprising:a processing device; and
a memory device on which instructions executable by the processing device are stored for causing the processing device to:
generate a matrix of symbols to be positioned in a graphical user interface, each symbol in the matrix indicating a feature-map value that represents a likelihood of a particular feature being present or absent at a location in an input to a convolutional neural network, each column in the matrix having feature-map values generated by convolving the input to the convolutional neural network with a respective filter for identifying a specific feature in the input;
generate a node-link diagram to be positioned in the graphical user interface, wherein the node-link diagram represents a feed forward neural network that forms part of the convolutional neural network and comprises:
a first row of symbols representing an input layer to the feed forward neural network, wherein the input layer is also a maxpooling layer of the convolutional neural network, the first row of symbols is color coded to represent activation values for nodes in the input layer, and each symbol in the first row of symbols is vertically aligned with a respective column in the matrix of symbols and indicates a maximum value in the respective column;
a second row of symbols representing a hidden layer of the feed forward neural network, the second row of symbols being color coded to represent activation values of nodes in the hidden layer;
a third row of symbols representing an output layer of the feed forward neural network, the third row of symbols being color coded to represent activation values of nodes in the output layer; and
lines between the first row of symbols, the second row of symbols, and the third row of symbols, the lines representing connections between nodes in the input layer, the hidden layer, and the output layer of the feed forward neural network;
generate the graphical user interface at least in part by positioning the matrix of symbols above and adjacent to the node-link diagram in the graphical user interface; and
transmit a display communication to a display device for causing the display device to output the graphical user interface.

US Pat. No. 10,191,999

TRANSFERRING INFORMATION ACROSS LANGUAGE UNDERSTANDING MODEL DOMAINS

Microsoft Technology Lice...

1. A computer-implemented method of expanding slot coverage for a domain-specific natural language understanding (“NLU”) system, the method comprising:accessing a plurality of queries from labeled training data for a classifier used to recognize an intent within the domain-specific NLU, wherein the intent is associated with a slot of the domain-specific NLU;
identifying a plurality of entities that occur in the slot of the domain-specific NLU within the plurality of queries;
extracting, from a knowledge graph, a graph type for each of the plurality of entities to generate a plurality of candidate graph types for the slot of the domain-specific NLU, the candidate graph types comprising at least one compatible entity that is eligible for pairing with the recognized intent of the domain-specific NLU;
calculating a correlation score for each graph type in the plurality of candidate graph types for pairing the at least one compatible entity with the recognized intent of the domain-specific NLU;
assigning an individual graph type having the highest correlation score as the graph type the domain-specific NLU slot can accept;
expanding slot coverage for the domain-specific NLU by validating the pairing of the at least one compatible entity associated with the assigned individual graph type with the recognized intent of the domain-specific NLU; and
utilizing the validated pairing of the compatible entity and the recognized intent to interpret a natural language input of a query.

US Pat. No. 10,191,997

VISUALIZATION AND DIAGNOSTIC ANALYSIS OF INTERESTED ELEMENTS OF A COMPLEX SYSTEM

THE BOEING COMPANY, Chic...

1. An apparatus for implementation of a system for visualization and analysis of interested elements of a complex system, the apparatus comprising a processor and a memory storing executable instructions that in response to execution by the processor cause the apparatus to at least:receive and process data for a physical instance of the complex system composed of a plurality of elements, the data being received and processed to:
(a) identify a plurality of maintenance messages that are predefined for the complex system and identify a respective plurality of element-level failures in the complex system, the respective plurality of element-level failures being cascading in that an effect of an element-level failure of the respective plurality of element-level failures is manifest as another of the respective plurality of element-level failures, and
(b) identify a plurality of diagnostic procedures from the plurality of maintenance messages, each of the plurality of diagnostic procedures being defined for and associated with a respective one of the plurality of maintenance messages, involved elements in the plurality of diagnostic procedures including any failed elements and elements that are checked or interacted with to identify the failed elements, and implicated elements in the plurality of diagnostic procedures including elements that interconnect the involved elements, a plurality of interested elements of the plurality of elements including the involved elements and the implicated elements;
generate a visual presentation of at least a portion of a digital three-dimensional (3D) model of the complex system, the visual presentation being digital media and depicting 3D objects that correspond to the plurality of interested elements and one or more other elements of the plurality of elements; and
apply a visual effect to the 3D objects of the 3D model that correspond to the plurality of interested elements depicted by the visual presentation to distinguish the plurality of interested elements from the one or more other elements depicted by the visual presentation, the plurality of interested elements and thereby the 3D objects that correspond to the plurality of interested elements including respectively at least one interested element and 3D object for each of the plurality of diagnostic procedures and correspondingly each of the plurality of maintenance messages for and with which the plurality of diagnostic procedures are defined and associated.

US Pat. No. 10,191,996

RULES DRIVEN PAN ID METADATA ROUTING SYSTEM AND NETWORK

Digimarc Corporation, Be...

1. A system for providing metadata responses for an audio or image signal in response to a requesting device, the system comprising:a first fingerprint database comprising at least one computer configured to receive an electronic version of the audio or image signal for registering a fingerprint in the first fingerprint database as a registered fingerprint linked to a first content ID;
a first fingerprint calculator comprising a programmed computer, the first fingerprint calculator in communication with the first fingerprint database, the first fingerprint calculator configured to receive the electronic version and calculate the registered fingerprint of the electronic version and provide the registered fingerprint to the first fingerprint database, the registered fingerprint comprising registered sub-fingerprints taken from portions of the electronic version, the registered sub-fingerprints linking to the first content ID;
the first fingerprint database configured to receive sub-fingerprints extracted from an audio or image signal sensed from a mobile device sensor of the requesting device, the first fingerprint database configured to obtain the first content ID corresponding to the registered sub-fingerprints matching the extracted sub-fingerprints;
an ID resolver comprising a programmed computer configured to receive the first content ID and determine at least a first metadata response corresponding to the first content ID, the ID resolver further configured with plural different handlers to process corresponding digital codes extracted from the audio or image signal and provide metadata responses for content IDs in the digital codes, wherein a first handler of the plural handlers is configured to receive a second content ID from the requesting device and determine at least a second metadata response corresponding to the second content ID, the second content ID being obtained from a first digital code extracted from the audio or image signal sensed from the mobile device sensor;
a rules processor comprising a programmed computer configured to process rules associated with the first and second content IDs, and determine priority of the first and second metadata responses to be provided to the requesting device, wherein the rules processor is configured to determine priority of the first and second metadata responses based on priority of the first and second content IDs;
plural different registration interfaces for registering different content ID types for the audio or image signal; and wherein the rules processor is configured to determine priority of metadata response among the different content ID types; and
a response aggregator comprising a programmed computer configured to form a metadata response from the first and second metadata responses based on output of the rules processor, and configured to provide an aggregated metadata response for presentation on the requesting device.

US Pat. No. 10,191,995

PROVIDING AUTO-FOCUS FOR A SEARCH FIELD IN A USER INTERFACE

Google LLC, Mountain Vie...

1. A computer-implemented method comprising:providing a search results page that includes (i) a search field and (ii) one or more search results;
receiving an input that includes one or more characters of a particular subset of alphanumeric characters when a focus of the search results page is set so that input is not input into the search field; and
in response to receiving the input that includes the one or more characters of the particular subset of alphanumeric characters when the focus of the search results page is set so that input is not directed to the search field, changing the focus of the search results page to the search field and adding the input that includes the one or more characters of the particular subset of alphanumeric characters into the search field.

US Pat. No. 10,191,994

READING FROM A MULTITUDE OF WEB FEEDS

Microsoft Technology Lice...

1. A computer-implemented method of retrieving content published in multiple web feeds offered by multiple sources, the method comprising:identifying web feeds offered by the multiple sources; and
operating the computer to, for each of the multiple sources:
poll the web feeds offered by the source to determine whether any polled web feed has new content;
retrieve the new content from each of the web feeds that has new content;
when new content is retrieved from at least one web feed offered by the source during the poll, increment a content indicator value corresponding to the source if the content indicator value is not currently a maximum value, wherein:
said increment consists of a single increment of the content indicator value regardless of the number of content items retrieved; and
the content indicator value indicates a relative frequency with which new content is retrieved from the source;
when no new content is retrieved from any web feed offered by the source during the poll, decrement the content indicator value if:
the content indicator value is not currently a minimum value; and
the content indicator value has not been decremented within a threshold period of time; and
schedule the source for a next polling.

US Pat. No. 10,191,993

NETWORK BASED SWEEPSTAKES GAMING SYSTEM INCORPORATING AN ALTERNATIVE METHOD OF CONTESTANT ENTRY

SCA PROMOTIONS, Dallas, ...

1. A network based sweepstakes system comprising:a database server configured to receive electronically entered contestant information from a sweepstakes contestant for entry into a sweepstakes;
a web server configured to:
generate an optically machine readable (OMR) code based on the electronically entered contestant information, the OMR code corresponding to a unique index number representing the entry into the sweepstakes;
generate a mail in address for a sweepstakes processing center based on the contestant information; and
transmit the OMR code and the mail in address to at least one web enabled device for creating a document containing the OMR code, the document to be printed and physically mailed to the sweepstakes processing center; and
an optical scanner configured to:
scan the printed and physically mailed document containing the OMR code; and
extract the unique index number for validating entry in the sweepstakes by matching the unique index number with the electronically entered contestant information, the extracted unique index number for determining in a random selection from a plurality of extracted index numbers whether the sweepstakes contestant is a winner.

US Pat. No. 10,191,991

SYSTEM AND METHOD FOR DETECTING A SEARCH INTENT

Doat Media Ltd., Tel Avi...

1. A method for determining a search intent of a user submitting a search query, comprising:tokenizing the search query into at least one tokenized query, wherein the tokenizing further comprises creating a plurality of tokens based on the search query and arranging the created tokens based on a graph of connections between entities;
transmitting, to a plurality of engines, the at least one tokenized query, wherein each engine is configured with at least one entity, wherein each entity represents a topic of interest;
receiving, from each of at least two engines of the plurality of engines, the at least one entity of the engine and at least one certainty score, wherein each certainty score indicates a probability that a tokenized query of the at least one tokenized query is mapped to the at least one entity of the engine;
determining, based on the received entities and their associated certainty scores, the search intent of the user; and
supplying the determined search intent of the user to a search server for use in developing search results for the user submitted search query.

US Pat. No. 10,191,990

CONTENT RECOMMENDATION SYSTEM WITH WEIGHTED METADATA ANNOTATIONS

Comcast Cable Communicati...

1. A method, implemented by one or more computing devices, comprising:receiving a first input indicating a first content item;
receiving a second input indicating a threshold applicability score;
receiving a first set of metadata tags associated with the first content item;
determining applicability scores for the first set of metadata tags;
determining that an applicability score for a first metadata tag, of the first set of metadata tags, satisfies the threshold applicability score;
receiving user feedback data relating to the first metadata tag of the first set of meta data tags and the first content item;
adjusting the applicability score for the first metadata tag, of the first set of metadata tags, based on the received feedback data;
comparing the adjusted applicability score for the first metadata tag, of the first set of metadata tags, to the threshold applicability score; and
modifying a metadata field of the first content item to remove the first metadata tag based on the comparing the adjusted applicability score to the threshold applicability score.

US Pat. No. 10,191,989

COMPUTATION OF PEER COMPANY GROUPS BASED ON POSITION TRANSITION DATA IN A SOCIAL NETWORKING SERVICE

Microsoft Technology Lice...

1. A system comprising:a non-transitory computer-readable medium having instructions stored thereon, which, when executed by a processor, cause the system to:
determine a granularity of company similarity, wherein the granularity of company similarity is a level at which social networking data should be filtered to identify companies similar to a target company;
construct a weighted graph of companies at the granularity of company similarity, wherein each node in the weighted graph is a company and a directed edge exists in the weighted graph between a first node and a second node if the social networking data, at the granularity of company similarity, indicates that a transition occurred wherein a member who held a position at a company corresponding to the first node transitioned to a position at a company corresponding to the second node, wherein each directed edge contains a weight indicating a strength of relationship between nodes; and
traverse the weighted graph of locations from a node corresponding to the target company in order to identify companies similar to the target company, wherein the traversing including finding a node corresponding to the target company and following edges for any edge having a weight greater than a threshold value to find a similar company at another end of the followed edge;
retrieve, from an external data source, one or more confidential data values having been entered on screens of a first set of one or more graphical user interfaces and encrypted on the external data source, the one or more confidential data values having attributes matching the identified companies similar to the target company; and
present information corresponding to the retrieved one or more confidential data values in a second set of one or more graphical user interfaces.

US Pat. No. 10,191,988

SYSTEM AND METHOD FOR RETURNING PRIORITIZED CONTENT

Sony Mobile Communication...

1. A method of providing a prioritized list of items available via an electronic user device to a user, comprising:identifying, by one or more processors having access to a memory, a plurality of relations of the user;
classifying, by the one or more processors, each of the plurality of relations of the user into at least one of a plurality of classifications in a social graph;
for each of the plurality of relations of the user, identifying, by the one or more processors, a set of objects associated with a relation of the user, wherein the set of objects is identified based on interactions that the relation has with an electronic device; and
indexing, by the one or more processors, each of the identified objects in a multidimensional object matrix stored in the memory;
generating, by the one or more processors and for an object in the set of objects, multidimensional ranking data, wherein each dimension of the multidimensional ranking data is based on a different manner in which a relation has had interactive behavior with the object;
indexing, by the one or more processors, each dimension of the multidimensional ranking data in the multidimensional object matrix, wherein the indexing associates each dimension of the multidimensional ranking data with the object;
identifying, by the one or more processors, items for the list, wherein the list items are search results for a user-defined search query, the search results having relative priority based on at least a number of inbound links to each search result;
determining, by the one or more processors, a relative level of the user's contextual affinity with one or more of the list items, contextual affinity to a list item characterized by connectedness of a context of the user's current use of the electronic user device to a dimension of the multidimensional ranking data associated with the object when the object corresponds to the list item; and
ranking, by the one or more processors, the list items according to the relative levels of affinity, wherein ranking the list items according to the relative levels of affinity includes assiqninq a first weiqhtinq factor to the relative level of affinity and a second weighting factor to the relative priority based on the number of inbound links, and wherein the ranking is based on a combination of the weighted level of affinity and the weighted priority based on the number of inbound links.

US Pat. No. 10,191,987

SYSTEMS AND METHODS FOR SEARCHING FINANCIAL DATA

Capital One Services, LLC...

1. A client device for searching transaction information, comprising:interface hardware for receiving and providing information;
one or more memory devices for storing instructions;
one or more hardware processors configured to execute the instructions to:
access stored transaction data associated with one or more transactions;
generate, using an enhanced transaction engine, enhanced transaction descriptions by determining information associated with the one or more transactions;
modify the stored transaction data to include the determined information of the enhanced transaction descriptions;
receive, via the interface hardware, a search query question for user requested information associated with one or more transactions;
using a parsing engine, parse the search query question for identification of one or more concepts;
using the parsing engine, transfer the search query question to a transaction search engine;
automatically generate a database query comprising:
at least one data query language command based on the search query question; and
at least one of the one or more identified concepts;
run the database query against the modified stored transaction data;
receive, using the transaction search engine, transaction data responsive to the database query;
determine a result that satisfies the user request based on the responsive transaction data;
provide the result via the interface hardware;
prompt a user, via the interface hardware, for feedback regarding the result;
receive the feedback via the interface hardware; and
based on the feedback, update the parsing engine to either include additional concepts or remove existing concepts.

US Pat. No. 10,191,986

WEB RESOURCE COMPATIBILITY WITH WEB APPLICATIONS

Microsoft Technology Lice...

1. A client device comprising:one or more processors; and
computer-readable storage media storing instructions thereon that are executable by the one or more processors to perform operations including:
receiving an indication of a request to navigate a web application to a web resource;
querying a compatibility service regarding a compatibility status of the web resource with the web application;
receiving a notification from the compatibility service of a known compatibility issue with the web resource, the notification including a compatibility element comprising injectable code that, when executed by the web application, mitigates the compatibility issue by intercepting calls made by the web resource and adjusting at least one characteristic associated with the calls;
responsive to receiving the notification from the compatibility service, injecting the compatibility element in connection with launching the web resource to mitigate the compatibility issue;
causing a visual indicator to be displayed indicating that the compatibility element is being applied to the web resource, the visual indicator enabling a user to provide feedback regarding presentation of the web resource via the web application; and
receiving feedback from the user via the visual indicator and causing to be communicated to the compatibility service an indication of whether the compatibility element successfully mitigated the compatibility issue based at least in part on the feedback received from the user.

US Pat. No. 10,191,978

LABELING/NAMING OF THEMES

Verint Systems Ltd., Her...

1. A method for computer learning through developing and implementing an ontology to display and create search protocol, the method comprising:a processor receiving a plurality of communication data, wherein each of the plurality of communication data is an instance of an exchange between at least one agent and at least one customer;
transforming each of the plurality of communication data to a data set formatted for training;
identifying scripts within the received data set;
executing a zoning process that segments conversations within the data set into meaning units;
executing a term extraction process that reviews the meaning units and extracts the terms that are meaningful in the dataset;
executing a pre-ontology process that tags the terms that overlap;
processing the data set to identify context vectors, wherein context vectors are links between the terms and the words that appear before or after each term in the data set;
building a dendrogram by scanning the context vectors of the terms and clustering together terms with similar context vectors;
transforming the dendrogram into a contextual similarity tree that only contains the stronger similarity clusters of the original dendrogram, wherein a strength of the similarity clusters is based on a similarity score algorithm that scores the similarity of the terms in the associated context vectors;
developing relations within the data set, wherein the relations are links between the defined terms in the data set;
identifying themes appearing within the data set based upon the relations and the transformed dendrogram; and
using a graphical user interface to display the themes appearing within the data set allowing a user to search the plurality of communication data for specific instances of the theme.

US Pat. No. 10,191,977

SYSTEM AND METHOD FOR PROVIDING TECHNOLOGY ASSISTED DATA REVIEW WITH OPTIMIZING FEATURES

Open Text Holdings, Inc.,...

1. An electronic document system, comprising:a processor;
a data store including a plurality of documents;
a non-transitory computer readable medium, comprising instructions for:
generating a document map for the plurality of documents within the data store using a topic-related generative model for the plurality of documents by clustering the plurality of documents into topics based on the topic-related generative model;
selecting a control set of documents from the plurality of documents, wherein the control set of documents is selected from a first strata of the plurality of documents and a second strata of the plurality of documents, and wherein the first strata is randomly selected from documents with an initial responsiveness score below a decision boundary score and the second strata is randomly selected from documents with the initial responsiveness score above the decision boundary score;
sending the control set of documents to a user;
receiving a control set metric regarding the control set of documents from the user, wherein the control set metric includes an indicator of responsiveness for each of the documents of the control set of documents;
the document system performing the steps of:
a) determining a responsiveness score for each of the plurality of documents according to a scoring algorithm including determining a document responsiveness probability for the document, determining a weighted topic score for the document for each of a set of topics in the topic-related generative model based on the document responsiveness probability and a topic-document weight between the topic and the document, generating the initial responsiveness score based on the topic-document weights of the document for each topic and the weighted topic score, and normalizing the document responsiveness probability based on the initial responsiveness score to determine the responsiveness score for the document;
b) determining a set of responsive documents and a set of non-responsive documents of the plurality of documents based on the responsiveness score determined for each of the plurality of documents and the decision boundary score;
c) determining a confidence score for the document system using the responsiveness score for each of the documents of the control set and the indicator of responsiveness for each of the control set documents received from the user;
d) selecting one or more of the plurality of documents based on the responsiveness scores of the plurality of documents, wherein the responsiveness score of each of the one or more selected documents is at or near the decision boundary score;
e) presenting the one or more selected documents to the user;
f) receiving an indicator of responsiveness from the user for each of the selected documents;
g) refining the scoring algorithm based on the indicator of responsiveness for each of the selected document; and
h) generating a desired confidence score for the document system and presenting the set of responsive documents to the user when the desired confidence score for the document system is achieved, wherein the confidence score for the document system is determined by comparing the responsiveness score for the documents of the control set to the indicator of responsiveness for the documents of the control set received from the user.

US Pat. No. 10,191,976

SYSTEM AND METHOD OF DETECTING COMMON PATTERNS WITHIN UNSTRUCTURED DATA ELEMENTS RETRIEVED FROM BIG DATA SOURCES

1. A method for detection of common patterns within unstructured data elements, comprising:searching a plurality of unstructured data elements extracted from big data sources to identify a plurality of patches;
extracting the plurality of patches that were identified;
generating, by a signature generator system, at least one signature for each one patch of the plurality of patches to generate a plurality of signatures for the plurality of patches, wherein the signature generator system includes a plurality of computational cores configured to receive the plurality of patches, each one computational core of the plurality of computational cores having properties that are at least partly statistically independent of other ones of the plurality of computational cores, wherein the properties of the one computational core are set independently of each other computational core of the plurality of computational cores;
identifying common patterns among the plurality of signatures;
clustering the plurality of signatures having the common patterns that were identified to generate a plurality of clusters; and
correlating the plurality of clusters to identify associations between the respective common patterns that were identified.

US Pat. No. 10,191,975

FEATURES FOR AUTOMATIC CLASSIFICATION OF NARRATIVE POINT OF VIEW AND DIEGESIS

The Florida International...

1. A computer-based system of predicting a narrative point of view of text data, the system comprising:a receiving device configured to receive text data;
a non-transitory computer-readable medium comprising natural language processing code stored thereon that, when executed, cause a processor to:
receive, by the receiving device, text data;
perform feature extraction using feature extraction code, by performing the following:
remove quoted text and punctuation characters from the text data;
convert upper case characters in the text data to lower case characters;
extract each pronoun contained in the text data and a respective number of instances of each pronoun;
insert a respective number of instances of each pronoun into a feature vector; and
predict, by support vector machine code, a narrative point of view of the text data based upon the extracted pronouns and the respective number of instances of each pronoun,
wherein each pronoun comprises one of the following: “I”, “me”, “my”, “mine”, “myself”, “we”, “us”, “our”, “ours”, “you”, “your”, “yours”, “he”, “him”, “his”, “she”, “her”, “hers”, “they”, “them”, and “theirs”, and
wherein the support vector machine code is trained to predict the narrative point of view of the text data based upon the pronouns and the respective number of instances of each pronoun.

US Pat. No. 10,191,974

METHOD AND SYSTEM FOR HIGH PERFORMANCE INTEGRATION, PROCESSING AND SEARCHING OF STRUCTURED AND UNSTRUCTURED DATA

IP RESERVOIR, LLC, St. L...

1. A method for low latency stream indexing, the method comprising:receiving streaming unstructured data into a member of the group consisting of (1) a reconfigurable logic device, (2) a graphics processor unit (GPU), and (3) a chip multi-processor (CMP), the streaming unstructured data comprising a plurality of data objects, wherein the member has a plurality of parallel processing engines deployed thereon;
the parallel processing engines analyzing the data objects while the data objects stream through the member to perform a classification operation that determines classification metadata about the data objects; and
creating an association that is physically represented in memory between the determined classification metadata and the data objects, wherein the creating step comprises generating a classification index about the streaming unstructured data from the classification metadata and the associations between the classification metadata and the corresponding data objects, the classification index for subsequent querying to locate data items of interest based on the associations between the classification metadata and the data objects.

US Pat. No. 10,191,970

SYSTEMS AND METHODS FOR CUSTOMIZED DATA PARSING AND PARAPHRASING

International Business Ma...

1. A system comprising:a communications module configured to receive a plurality of content from a plurality of resources;
an analytics engine comprising at least one processor and a memory configured to receive a user query associated with a user and parse the plurality of content received from the communications module based on at least one of an administration rule, a user profile corresponding to the user, and historical data corresponding to the user;
an artificial intelligence engine comprising the at least one processor and the memory and configured to:
determine a confidence ranking for each of the plurality of parsed content; and
select a set of prioritized parsed content from the plurality of parsed content based on the confidence ranking for each of the plurality of parsed content;
a natural language engine comprising the at least one processor and the memory and configured to:
convert, using a natural language processing technique, the set of prioritized parsed content into a format suitable for a user interface, wherein the format is based on a writing style of the user and a skill level of the user;
identify a learning style of the user based on information associated with the user query, wherein the learning style is selected from a group consisting of a visual learning style, an auditory learning style, a reading-writing learning style, and a tactile learning style;
filter the converted set of prioritized parsed content based on the learning style of the user; and
combine the filtered set of prioritized parsed content into a summarized output; and
a user interface configured to present the summarized output to the user based on the information associated with the user query.

US Pat. No. 10,191,969

FILTERING ONLINE CONTENT USING A TAXONOMY OF OBJECTS

Facebook, Inc., Menlo Pa...

1. A computer program product comprising a non-transitory computer readable storage medium having instructions encoded thereon that, when executed by a processor, cause the processor to:retrieve a taxonomy of a plurality of objects by an online system, each object associated with a data structure representing the object in a canonical form, the taxonomy indicating resemblances between the plurality of objects;
receive a content item from a target third party system, the content item associated with a target audience of users of the online system and describing a target object;
determine that a corresponding object of the plurality of objects is associated with the target object based on the data structure of the corresponding object;
receive, from a client device of a user of the online system, information describing one or more objects that the user acquired via a plurality of third party systems;
for each object of the one or more objects, determine a resemblance score based on the data structure of the object and the data structure of the corresponding object, the resemblance score indicating a level of resemblance between the object and the corresponding object;
exclude the user from the target audience of users in response to at least one of the resemblance scores being greater than a threshold value;
exclude the content item from a set of content items in response to the excluding of the user from the target audience of users; and
send a selected content item from the remaining set of content items for display on the client device.

US Pat. No. 10,191,968

AUTOMATED DATA ANALYSIS

Wolfram Alpha LLC, Champ...

1. A system for automatically analyzing structured data sets, comprising:one or more processors; and
one or more tangible, non-transitory computer readable storage devices coupled to the one or more processors, the one or more tangible, non-transitory computer readable storage devices storing:
a structured data set to be analyzed;
respective sets of machine readable instructions corresponding to computer executable computational analyses among a plurality of computer executable computational analyses, wherein the respective sets of machine readable instructions, when executed by the one or more processors, cause the one or more processors to perform respective computer executable computational analyses;
computational analysis attribute data corresponding to the plurality of computer executable computational analyses, the computational analysis attribute data including, for each computer executable computational analysis, one or more respective attributes indicating respective characteristics of data required or preferred for the structured data set to be considered compatible with being an object of a performance of the each computer executable computational analysis; and
further machine readable instructions that, when executed by the one or more processors, cause the one or more processors to:
determine one or more measures of compatibility between the structured data set and the one or more particular computer executable computational analyses using i) computational analysis attribute data corresponding to one or more particular computer executable computational analyses among the plurality of computational analyses, and ii) data set attribute data indicative of one or more characteristics of the structured data set,
select a set of one or more computer executable computational analyses from the plurality of computer executable computational analyses using one or more measures of compatibility, the selected set of the one or more computer executable computational analyses corresponding to one or more candidate computer executable computational analyses for performing on at least a portion of the structured data set; and
perform one or more computer executable computational analyses from the selected set on at least one of i) the structured data set, or ii) one or more portions of the structured data set.

US Pat. No. 10,191,967

CLUSTERING DATABASE QUERIES FOR RUNTIME PREDICTION

DASSAULT SYSTEMES, Veliz...

1. A computer-implemented method of clustering reference queries in a database for prediction of the runtime of a target query in the database based on similarity of the target query with the reference queries, the method comprising:providing a number (n) of numerical values (x1, . . . , xn) that represent the runtimes of the reference queries;
computing the optimal K-means clustering of the numerical values for a predetermined number (K) of clusters, wherein the computing includes iterating, a number of times corresponding to the predetermined number of clusters, a linear-time Row Minima Searching algorithm applied to a square matrix (H) of order equal to the number of numerical values; and
clustering the reference queries according to the computed clustering of the numerical values,
wherein the numerical values (x1, . . . , xn) are sorted and indexed accordingly, and the iterating within the computing includes, at each respective iteration rank (k), and for each respective index (j) inferior to the number (n) of numerical values, the computation of a minimal total distortion (TDmin(j,k)) achievable for the subset of numerical values (xi) indexed lower than the respective index (i<=j), with a number of clusters corresponding to the respective iteration rank (k), according to a linear-time Row Minima Searching algorithm applied to the square matrix (H), and
wherein, at each respective iteration rank (k), and for each respective index (j) inferior to the number (n) of numerical values, for each row index (i) and each column index (j), the matrix entry (H(i,j)) corresponds to a sum of:
the minimal total distortion (TDmin(i?1,k?1)) computed at the previous iteration for the index (i?1) preceding the row index, and
a distortion (disto(i,j)) of the contiguous subset (xi, . . . , xn) of the numerical values between the row index and the column index.

US Pat. No. 10,191,966

ENABLING ADVANCED ANALYTICS WITH LARGE DATA SETS

Business Objects Software...

1. A computer-implemented method comprising:receiving, by operation of a computer system, a dataset of a plurality of data records, each of the plurality of data records comprising a plurality of features and one or more target variables;
selecting key features among the plurality of features based at least on relevance measures of the plurality of features with respect to the one or more target variables, wherein selecting key features among the plurality of features comprises:
selecting a first subset of data records with a first size from the dataset of the plurality of data records;
selecting a first subset of features from the plurality of features of the first subset of data records;
selecting a second subset of features from the plurality of features of the first subset of data records;
computing a similarity metric between the first subset of features and the second subset of features;
determining that the first subset of features and the second subset of features converge based on the similarity metric; and
in response to the determination, identifying key features of the dataset based on the first subset of features and the second subset of features of the first subset of data records;
calculating a first set of relevance measures of each of the first subset of features with respect to the target variable;
calculating a second set of relevance measures of each of the second subset of features with respect to the target variable; and
wherein computing a similarity metric comprises computing the similarity metric based on the first set of relevance measures and the second set of relevance measures;
dividing the dataset into a plurality of subsets;
for each of the plurality of subsets, identifying a plurality of clusters and respective centroids of the plurality of clusters based on the key features;
identifying a plurality of final centroids based on the respective centroids of the plurality of clusters for the each of the plurality of subsets, the plurality of final centroids being respective centroids of a plurality of final clusters; and
for each data record in the plurality of subsets, assigning the data record to one of the plurality of final clusters based on distances between the data record and the plurality of final centroids.

US Pat. No. 10,191,964

AUTOMATIC ISOLATION AND SELECTION OF SCREENSHOTS FROM AN ELECTRONIC CONTENT REPOSITORY

Microsoft Technology Lice...

1. A computer-implemented method of isolating a captured screenshot from other electronic content items, comprising:receiving a selection to identify screenshots;
accessing a gallery of electronic content items stored in a single content repository, wherein the electronic content items include photos, screenshots and other content items;
determining, for each electronic content item, whether the electronic content item is stored in the single content repository in association with screen resolution information specifying a screen resolution at which the content item was captured;
identifying a screen resolution of a computing device utilized for capturing at least one of the screenshots;
for those ones of the electronic content items determined to be stored in the single content repository in association with screen resolution information, comparing the screen resolution specified by the screen resolution information to the identified screen resolution of the computing device utilized for capturing at least one of the screenshots, to determine whether the electronic content item associated with the screen resolution information is a screenshot;
isolating the screenshots from the photos and the other content items within the electronic content items; and
displaying the isolated screenshots.

US Pat. No. 10,191,963

PREFETCHING ANALYTIC RESULTS ACROSS MULTIPLE LEVELS OF DATA

Oracle International Corp...

1. A method comprising:receiving from an application layer, a first request to view a summary of a multidimensional dataset;
wherein the first request to view the summary of the multidimensional data set targets a first level of a particular dimension in the multidimensional dataset;
in response to receiving the first request to view the summary of the multidimensional dataset:
determining a pre-fetch range that identities how many levels of analytic results to pre-fetch along the particular dimension of the multidimensional dataset;
performing, for the first level of the particular dimension and one or more levels that are within the pre-fetch range of the first level of the particular dimension, at least one analytical operation;
returning, to the application layer, a first analytic result of the at least one analytical operation for the first level of the particular dimension; and
storing, in a cache, a respective analytic result of the at least one analytical operation for each respective level of the one or more levels;
wherein the respective analytic result of the at least one analytical operation for each respective level of the one or more levels is not required to view the summary of the multidimensional dataset;
receiving a second request to navigate to a second level of the particular dimension that is within the pre-fetch range of the first level of the particular dimension;
in response to receiving the second request:
retrieving, from the cache, a second analytical result of the at least one analytical operation for the second level of the particular dimension; and
returning, to the application layer, the second analytical result of the at least one analytical operation for the second level of the particular dimension.

US Pat. No. 10,191,962

SYSTEM FOR CONTINUOUS MONITORING OF DATA QUALITY IN A DYNAMIC FEED ENVIRONMENT

1. A system, comprising:a memory that stores instructions; and
a processor that executes the instructions to perform operations, the operations comprising:
subscribing to data feeds and metadata feeds associated with the data feeds;
receiving, from a data feed management system, the data feeds and the metadata feeds;
passively monitoring, by utilizing a feed inspection tool of a computing device, the data feeds and the metadata feeds;
deriving group-by variables and quantitative variables from the data feeds and the metadata feeds;
aggregating, for a plurality of aggregation intervals, the data feeds and the metadata feeds by combining the data feeds and the metadata feeds into an aggregation feed, wherein statistical summaries are computed for the quantitative variables for each combination of the group-by variables;
generating, for a baseline model feed and by utilizing model parameters provided by the feed inspection tool, baseline models at multiple scales by utilizing historical data associated with the aggregation feed in sliding windows of different lengths, wherein the baseline models are generated by utilizing the feed inspection tool of the computing device;
identifying, for a plurality of monitoring time delays, data outliers by comparing the aggregation feed for a current aggregation interval to the baseline model feed;
generating a data quality feed based on the data outliers identified, wherein the data quality feed is generated based in part on sampling a configurable subset of entire files in the data feeds instead of sampling all files in the data feeds, thereby avoiding overhead associated with parsing all the files in the data feeds at a record level, wherein the configurable subset of the entire files are sampled by utilizing a longitudinal sample that is selected when a full feed rate for delivering the files is greater than a number of files a subscriber of the data feeds and the data quality feed is capable of handling, wherein a set of random files across the data feeds are also sampled when generating the data quality feed so as to capture correlations among the data feeds that are not capturable using the longitudinal sample; and
publishing, to the data feed management system, the data quality feed so that the data quality feed is accessible to the subscriber subscribing to the data quality feed, wherein the subscriber is a computer.

US Pat. No. 10,191,961

SYSTEMS AND METHODS FOR MANAGING THE SYNCHRONIZATION OF KEY VALUES AND ASSOCIATED DATA ACROSS DATABASES

MASTERCARD INTERNATIONAL ...

1. A data synchronization (DS) computing device comprising one or more processors in communication with one or more memory devices, the DS computing device configured to:process a plurality of messages;
identify a subset of the plurality of messages including a key value, the key value identifying at least one respective data record;
determine a requesting party associated with the subset of the plurality of messages based on a requesting party identifier common to the subset of the plurality of messages;
generate an update request on behalf of the requesting party identified by the requesting party identifier, the update request including the key value and the requesting party identifier;
store the update request in a queue for subsequent processing;
retrieve the update request from the queue;
identify key lookup data associated with the update request by performing one or more database operations on one or more data sources, the key lookup data including one or more updated data record elements;
determine whether a release is needed from at least one stakeholder associated with the key value;
when the release is needed, transmit a release request to the stakeholder, the release request including the key value and the requesting party identifier;
receive a release response from the stakeholder, the release response indicating that the release has been authorized; and
transmit an update response to the requesting party, the update response including the key lookup data.

US Pat. No. 10,191,959

VERSIONED READ-ONLY SNAPSHOTS OF SHARED STATE IN DISTRIBUTED COMPUTING ENVIRONMENTS

Amazon Technologies, Inc....

1. A distributed system, comprising:a plurality of computing devices comprising one or more processors and memory to implement a state manager of a distributed computing application including a plurality of client processes, wherein the state manager comprises a plurality of server nodes configured to coordinate access to a registry comprising a representation of a state of the distributed computing application;
wherein the state manager is configured to:
implement a set of programmatic interfaces, accessible to a client process of the plurality of client processes, defining operations associated with a read-only cache of registry elements to be maintained on behalf of the client process;
in response to a cache setup request from a particular client process of the plurality of client processes, formatted in accordance with an interface of the set of programmatic interfaces,
designate one or more elements of the registry as a cache data set, wherein the cache setup request identifies the one or more elements of the registry;
provide, to the particular client process, a reference to an asynchronously updated cache object comprising contents of the cache data set, wherein the particular client process is provided read-only access to the cache object; and
initiate a sequence of asynchronous update notifications to the cache object, wherein each asynchronous update notification includes (a) updated contents of an element of the cache data set, and (b) a cache version identifier based at least in part on a registry logical timestamp value indicative of a time at which the element was updated; and
in response to a block request from the particular client process comprising a future timestamp, provide, to the particular client process, a reference to a synchronous computation, wherein the synchronous computation is blocked until the cache version identifier corresponds to the future timestamp.

US Pat. No. 10,191,958

STORAGE PROVISIONING IN A DATA STORAGE ENVIRONMENT

EMC IP Holding Company LL...

1. A system for storage provisioning in a data storage environment, the system comprising:an orchestration API; and
computer-executable program code operating in memory coupled with a processor in communication with a database, wherein the computer-executable program code is configured to enable a processor to execute logic to enable:
receiving, through the orchestration API, a request to create a replicated volume, wherein the request comprises a source volume size, a source site, and a source volume protocol, wherein the source site indicates a location at which an uncreated source volume is to be created;
based on the request, protecting, through the orchestration API, a source volume at the source site by setting the source volume to be replicated to a target volume at a target site through the use of a replication appliance; wherein the API is enabled to create network zones between the source site and the target site for replication from the source site to the target site and wherein the network zone is configured to include the replication appliance; wherein the API is enabled to mask storage devices used to store data on the source volume and the target volume to a respective replication appliance cluster node.

US Pat. No. 10,191,957

LIMITING DATASET CARDINALITY FOR RAPID DATA VISUALIZATION

SAP SE, Walldorf (DE)

1. A method of limiting cardinality of large datasets implemented by one or more data processors forming part of at least one computing device, the method comprising:receiving, by at least one data processor of a computing device, a query from a client device, wherein the query includes a plurality of query parameters comprising a number of fragments, a minimum value of a domain of interest, and a maximum value of the domain of interest;
retrieving, by at least one data processor from a remote data store, in response to the query, a query dataset comprised of a plurality of data records based on an inverse function;
determining, by at least one data processor, a fragmentation relation of the query dataset comprised of a plurality of fragments, the plurality of data records, a fragment code, the minimum value of the domain of interest, the maximum value of the domain of interest, and a set of fragment boundaries, wherein a plurality of fragments are comprised of the plurality of data records filtered between a range comprising of the minimum value of the domain of interest and the maximum value of the domain of interest;
determining, by at least one data processor, a representation relation based on the plurality of fragmentation attributes, wherein the plurality of fragments are each associated with a fragment code; determining, by at least one data processor, a visualization relation based upon the representation relation by adding a plurality of visualization attributes associated with the plurality of fragmentation attributes;
determining, by at least one data processor, a result relation based on the visualization relation, wherein the result relation is comprised of a plurality of representative fragments, each representative fragment associated with a unique fragment code;
generating, by at least one processor, encoded limited cardinality dataset for visualization; and
returning, by at least one data processor to the client device, the result relation.

US Pat. No. 10,191,955

DETECTION AND VISUALIZATION OF SCHEMA-LESS DATA

Microsoft Technology Lice...

1. A computer-implemented method for automatically optimizing a display of heterogeneous textual data that is being displayed in a user interface comprising a schema-less table, the method comprising:displaying, on a screen of a computer system implementing the method, the schema-less table comprising the heterogeneous textual data in a first format, wherein the first format of the schema-less table includes a number of columns and a number of rows;
for each particular row in the schema-less table, identifying a corresponding group of columns associated with each particular row, wherein:
the corresponding group of columns associated with each particular row is less than the number of columns in the schema-less table, and
determining whether a particular column is associated with a particular row is dependent on a presence or absence of a cell value for a common cell that is common between the particular column and the particular row, the presence of the cell value in the common cell indicates that the particular column is associated with the particular column is not associated with the particular row;
automatically designating an entity type for each row in the schema-less table, wherein determining which entity type is designated for each row is based on the identified associations between the columns and the rows such that any rows associated with a same set of columns are designated as being of a same entity type;
monitoring the schema-less table, including any rows included within the schema-less table, to detect user selection of a first-entity-type row in the schema-less table, the first-entity-type row having been automatically designated as belonging to a first entity type;
in response to the user selection of the first-entity-type row, automatically rearranging the schema-less table, by one or more processors of the computer system, to display the first-entity-type row and any other rows designated as being of the first entity type in a compressed format so that cell values for at least a majority of cells included within the first-entity-type row and the other rows designated as being of the first entity type are viewable on the computer system's screen by a user of the computer system, the compressed format being a format where blank columns are collapsed such that blank columns are refrained from being displayed; and
automatically returning the schema-less table, by the one or more processors, to the first format when one or more rows are no longer selected.

US Pat. No. 10,191,954

PRIORITIZED TRANSCODING OF MEDIA CONTENT

Amazon Technologies, Inc....

1. A computer implemented method for prioritizing media transcoding, said method comprising:providing, by one or more computing systems, media content to a plurality of users on behalf of a content publisher;
collecting historical data associated with the serving of the media content to the plurality of users, the historical data including at least one of: a type of device that initiated a request for the media content, a media format associated with the request, a time of the request or a location where the request originated;
receiving, from the content publisher, a request to reserve a set of reserved resource instances;
receiving, from the content publisher, new media content to be transcoded from at least one media format into a plurality of different media formats using at least the set of reserved resource instances;
determining, by the one or more computing systems, a priority for transcoding the new media content into each of the plurality of different media formats based at least in part on the historical data associated with the serving of the media content, wherein determining the priority for transcoding includes:
determining, based at least in part on the historical data, that a first format has a first probability of being requested and a second format has a second probability of being requested, the second probability being lower than the first probability;
assigning a first priority to the first format; and
assigning a second priority, lower than the first priority, to the second format; and
transcoding, by the one or more computing systems, the new media content from the media format into the plurality of different media formats according to the priority determined for transcoding the new media content, wherein transcoding the new media content includes:
employing the set of reserved resource instances to perform the transcoding of the new media content into the at least one format assigned the first priority; and
employing a set of excess capacity resource instances to perform the transcoding of the new media content into the at least one of the plurality of different media formats assigned the second priority.

US Pat. No. 10,191,953

METHOD OF STORING AND EXPRESSING WEB PAGE IN AN ELECTRONIC DEVICE

Samsung Electronics Co., ...

1. A method in an electronic device comprising a processor, a display, and a memory, comprising:searching web pages based on at least one parameter;
determining whether to store at least one web page of the searched web pages according to at least one of a current time, a network condition, a location, an additional charge condition, and a battery condition;
in response to determining to store the at least one web page, storing the at least one web page without user input;
extracting data from the stored web page;
sorting the extracted data into a plurality of categories;
creating an index page based on the plurality of categories for accessing to the extracted data by a user; and
displaying the index page through the display among a group of index pages,
wherein the at least one parameter, by the processor, is set based on the user's profile,
wherein the index page includes at least one category of the plurality of categories, at least some of the extracted data, at least one function generated according to the at least some of the extracted data, the at least one function executable on the at least some of the extracted data, and
wherein the creating of the index page is based on at least one of structure, layout, format, and design of the index page selected by the user.

US Pat. No. 10,191,952

SYSTEMS AND METHODS FOR EXPEDITED LARGE FILE PROCESSING

CAPITAL ONE SERVICES, LLC...

1. A system for processing a large file, comprising:one or more processors; and
a memory in communication with the one or more processors and storing instructions that, when executed by the one or more processors, are configured to cause the system to:
receive record data comprising a plurality of records, each of the plurality of records comprising an identification value in a common field, the common field having a data format comprising a sequence of characters and each of the identification values corresponding to a name;
determine, based on a comparison of a size of the record data to a predetermined size threshold, a focus value order of magnitude;
determine, based on the data format and the focus value order of magnitude, a plurality of unique focus values, each of the plurality of focus values corresponding to a sub-group of the plurality of records, wherein the plurality of focus values comprise a set of letters from A to Z with each of the plurality of focus values corresponding to a specified portion of the sequence of characters in the data format;
create a plurality of virtual processing units, each associated with a unique one of the plurality of focus values; and
responsive to searching the record data, process, by each of the plurality of virtual processing units, the respective sub-group of the plurality of records that corresponds to the focus value associated with the respective virtual processing unit.

US Pat. No. 10,191,951

SYSTEM AND METHOD FOR DETERMINING USER KNOWLEDGE SCORES BASED ON TOPIC ANALYSIS OF MAPPED CONTENT

Fuze, Inc., Boston, MA (...

1. A computer-implemented method for mapping communication content based on topic analysis to determine user knowledge scores, the method comprising:receiving a plurality of communication content, wherein the plurality of communication content comprises spoken content and non-spoken content;
converting, as converted content, the spoken content to additional non-spoken content; generating a data set of the communication content, wherein the generated data set comprises a plurality of words contained within the converted content and the received non-spoken content;
constructing a generative statistical model from the data set, wherein the generative statistical model identifies a list of topics from the data set and identifies a topic percentage determined from a probability that a word in the data set is associated with a given topic in the identified list of topics;
generating a communication content graph comprising user nodes and word edges for each identified topic in the list of topics, wherein the user nodes represent users receiving or generating communication content and the word edges represent words shared between two users;
calculating a topic strength for each word edge, wherein the topic strength is calculated by multiplying the topic percentage by the number of words in the communication content andfurther multiplying the result by a communication content weight determined as a function of the age of the communication content;determining, based on the calculated topic strengths, a user knowledge score for each user associated with each identified topic; and outputting the user knowledge score.

US Pat. No. 10,191,950

IDENTIFYING INFLUENCERS USING SOCIAL INFORMATION

Sprint Communications Com...

1. A non-transitory computer-readable media having computer-executable instructions embodied thereon that, when executed, enable a computing device to perform a method of using social information to identify influencers among a group of subscribers subscribing to services offered by a wireless-service carrier, the method comprising:based on voice calls and data associated with the services offered by the wireless-service carrier, identifying the group of subscribers, each subscriber of the group of subscribers having at least some degree of social interaction with at least one other subscriber of the group of subscribers
for a first subscriber and a second subscriber from the group of subscribers:
(A) determining a first set of subscribers from the group of subscribers, each subscriber of the first set of subscribers having some degree of social interaction with the first subscriber;
(B) determining a number of common friends shared by the first subscriber and the second subscriber, wherein the number of common friends is a subset of subscribers of the first set of subscribers having at least some degree of social interaction with the second subscriber;
(C) determining a number of subscribers in a largest-sized clique shared by both the first subscriber and the second subscriber by determining a number of subscribers in a sub-subset of the subset of subscribers in which each subscriber of the sub-subset has at least some degree of social interaction with every other subscriber of the sub-subset of subscribers; and
(D) determining a first pairwise influence score to represent the level of social interactivity between the first subscriber and the second subscriber, wherein the first pairwise influence score comprises a weighted combination of the largest-sized clique and the number of common friends.

US Pat. No. 10,191,949

RECOMMENDATION SYSTEM USING A TRANSFORMED SIMILARITY MATRIX

NBCUniversal Media, LLC, ...

1. A method comprising:generating, by a computing device, a first list of content items to recommend to a user based on a content item by content item similarity matrix;
based on a determination that a first content item was not in the first list of content items to recommend to the user, applying, by the computing device, a weight to the content item by content item similarity matrix to generate a weighted content item by content item similarity matrix, wherein each value of a plurality of values in the weighted content item by content item similarity matrix indicates a level of similarity between a content item in a row, of the weighted content item by content item similarity matrix, corresponding to the value and a content item in a column, of the weighted content item by content item similarity matrix, corresponding to the value;
generating, by the computing device, a reduced item by item similarity matrix by applying a matrix reduction algorithm to the weighted content item by content item similarity matrix, wherein the reduced item by item similarity matrix is smaller than the weighted content item by content item similarity matrix;
generating a second list of content items to recommend to the user based on the reduced item by item similarity matrix; and
determining whether the first content item was in the second list of content items to recommend to the user.

US Pat. No. 10,191,948

JOINS AND AGGREGATIONS ON MASSIVE GRAPHS USING LARGE-SCALE GRAPH PROCESSING

Microsoft Technology Lice...

1. A system comprising:a machine-readable medium storing computer-executable instructions; and
at least one hardware processor communicatively coupled to the machine-readable medium that, when the computer-executable instructions are executed, configures the system to:
retrieve a first social graph for a social networking service, the first social graph including a first plurality of nodes corresponding to members of the social networking service and a first plurality of edges connecting the first plurality of nodes,
wherein each edge is established between a source node and a destination node and represents a connection between members of the social networking service;
duplicate the first social graph to obtain a second social graph that is a copy of the first social graph, the second social graph comprising a second plurality of nodes that is a copy of the first plurality of nodes;
partition the first plurality of nodes into a first plurality of partitions, the first plurality of partitions being determined according to a source node selected from the first plurality of nodes;
partition the second plurality of nodes into a second plurality of partitions, the second plurality of partitions being determined according to a destination node selected from the second plurality of nodes;
assign each of the first plurality of partitions to a work unit of a first plurality of work units, wherein the first plurality of work units are determined according to a constraint on computing resources;
assign each of the second plurality of partitions to a work unit of a second plurality of work units; and
determine a third plurality of nodes by joining at least one partition selected from the first plurality of work units with at least one partition selected from the second plurality of work units, wherein the determined third plurality of nodes identify at least one node representing a second-degree connection for a member of the social networking service.

US Pat. No. 10,191,947

PARTITIONING ADVISOR FOR ONLINE TRANSACTION PROCESSING WORKLOADS

Microsoft Technology Lice...

1. A method comprising:identifying a schema defining a relational database;
identifying a workload based on an online transaction processing (OLTP) application that accesses the relational database, the workload comprising a plurality of transactions to be executed against the relational database;
based on the schema and the workload, generating a workload dependency graph (WDG), wherein:
a first node of the WDG represents a first table in the relational database;
a second node of the WDG represents a second table in the relational database; and
an edge between the first node and the second node represents a dependency between a column in the first table and a column in the second table; and
recommending at least one partitioning strategy to shard the relational database based at least in part on the WDG,
wherein relative sizes of the first node and the second node reflect relative weights of the first table and the second table with regard to partitioning the relational database; and
sharding the database across the first and second tables in accordance with one of said at least one recommended partitioning strategies.

US Pat. No. 10,191,946

ANSWERING NATURAL LANGUAGE TABLE QUERIES THROUGH SEMANTIC TABLE REPRESENTATION

International Business Ma...

1. A computer system for finding an answer to a query from a table, comprising:one or more processors, one or more computer-readable memories, one or more computer-readable tangible storage medium, and program instructions stored on at least one of the one or more tangible storage medium for execution by at least one of the one or more processors via at least one of the one or more computer-readable memories, wherein the computer system is capable of performing a method comprising:
receiving the query and the table, wherein the table is derived from a source document containing the table and a plurality of peripheral context data;
receiving a focus associated with the received query;
receiving the plurality of peripheral context data associated with the table, wherein the received plurality of peripheral context data includes data distinct from the table, and wherein the received plurality of peripheral context data is derived from the source document;
generating a primary tree and a secondary tree based on the received table, wherein the primary tree corresponds with a first column of the received table, and wherein the secondary tree corresponds with a second column of the received table, wherein a primary root node of the primary tree corresponds with a first header value of the first column, wherein a secondary root node of the secondary tree corresponds with a second header value of the second column, wherein a plurality of primary child nodes of the primary tree correspond with a plurality of first column cell values, and wherein a plurality of secondary child nodes of the secondary tree correspond with a plurality of second column cell values, and wherein missing header values are represented by a placeholder value;
generating a hierarchical representation based on the generated primary tree and the generated secondary tree;
mapping the primary tree to the secondary tree;
determining that the primary tree or the secondary tree contains a missing value based on identifying the placeholder value in the primary tree or secondary tree;
determining that the plurality of peripheral context data contains a substitute value based on determining that the primary tree or the secondary tree contains the missing value;
inserting the substitute value from the plurality of peripheral context data in place of the missing value;
determining the received focus is not in the primary tree and secondary tree;
mapping the received focus onto the secondary tree based on determining the received focus is not in the primary tree and secondary tree;
generating a plurality of predicate triples based on the primary tree and the secondary tree;
determining if a predicate triple within the plurality of predicate triples matches the query; and
adding the predicate triple within the plurality of predicate triples to a plurality of candidate answers based on determining that the predicate triple matches the query.

US Pat. No. 10,191,945

GEOLOCATING SOCIAL MEDIA

The Florida International...

1. A computer-implemented method of encoding geolocation metadata onto a social media data item, the method comprising:providing a remote knowledge database comprising M number of clusters of social media data items, each respective cluster representing a geographic area and establishing representative information for the geographic area associated with the respective cluster, each respective cluster being represented by a plurality of representative tags and comprising a plurality of social media data items that each respectively contain metadata that indicate origination from a common spatial-temporal location, each representative tag of the plurality of representative tags being an image, a keyword, or a phrase that is associated with the common spatial-temporal location;
providing a non-transitory computer-readable medium comprising stored instructions, that when executed cause at least one processor to:
receive, by a receiving device, a social media data item that is not encoded with geolocation metadata;
detect textual information contained in the social media data item not encoded with geolocation metadata, the textual information comprising visual images and text;
access the remote knowledge database via a network;
traverse, in parallel, each respective cluster in the remote knowledge database to detect a correlation between the textual information contained in the social media data item not encoded with geolocation metadata and each representative tag the plurality of representative tags of each respective cluster in the remote knowledge database;
rank each representative tag of the plurality of representative tags of each respective cluster by determining a strength of correlation between the textual information in the social media data item and each representative tag the plurality of representative tags of each respective cluster in the remote knowledge database based upon weighted values of each representative tag of the plurality of representative tags of each respective cluster;
receive, from the remote knowledge database, the geolocation of the respective cluster having a representative tag that has the strongest respective correlation with the textual information contained in the social media data item not encoded with geolocation metadata; and
append, the social media data item not encoded with geolocation metadata with metadata containing the geolocation of the respective cluster whose representative tag has the strongest correlation with the textual information contained in the social media data item not encoded with geolocation metadata.

US Pat. No. 10,191,944

COLUMNAR DATA ARRANGEMENT FOR SEMI-STRUCTURED DATA

Oracle International Corp...

1. A method comprising:maintaining, by a database server, semi-structured hierarchical data on persistent storage;
wherein a schema for the semi-structured hierarchical data comprises a tree of nodes in a hierarchical relationship, each node of the tree of nodes having a cardinality relationship with at least one other node in the tree of nodes with an immediate hierarchical relationship with said each node;
generating a denormalized arrangement defining a set of columns for a table, comprising rows, that is managed by the database server, wherein each column of said set of columns corresponds to respective one or more nodes of said tree of nodes, the generating comprising:
for each column in said set of columns, determining a data type for said each column based on a data type of each node of the respective one or more nodes of said column, and
determining a cardinality relationship between column values in a first column of said set of columns with column values in a second column of said set of columns based on a cardinality relationship between respective one or more nodes of said first column and respective one or more nodes of said second column;
wherein the cardinality relationship between column values in the first column of said set of columns with column values in the second column is:
a many-to-one relationship, wherein multiple column in the first column of the set of columns, can correspond to a particular value in the second column,
a one-to-one relationship, wherein a single value, in the first column, corresponds to at most one value in the second column, or
a many-to-many or no relationship, wherein no value in the first column corresponds to any value in the second column; and
storing at least a portion of the semi-structured hierarchical data into the table based on the denormalized arrangement.

US Pat. No. 10,191,942

REDUCING COMPARISONS FOR TOKEN-BASED ENTITY RESOLUTION

SAP SE, Walldorf (DE)

1. A system for reducing an amount of comparisons during entity resolution of records, the system comprising:an in-memory database system configured to store a plurality of records; and
token-based entity resolution circuitry configured to determine whether a current record is similar to one or more other records in the database, the token-based entity resolution circuitry including:
a token creator configured to create tokens from the plurality of records;
a token-record mapping creator configured to create a token-record mapping of tokens to records;
a token importance calculator configured to calculate token importance values for the tokens, each token importance value representing a level of amount of information contained within a respective token;
a token pruner configured to identify a token of the current record as unimportant based on token importance values of the tokens of the current record, the token pruner configured to remove the unimportant token from the token-record mapping, the identification and removal of the unimportant token comprising:
identifying a token having a highest token importance value within the current record;
marking at least one token as unimportant when a token importance value of the at least one token is less than a predetermined threshold relative to the highest token importance value in the current record; and
removing the at least one unimportant token from the token-record mapping such that records linked to the at least one unimportant token are not selected for comparison with the current record; and
a record selector configured to select only records sharing at least one common token with the current record such that the at least one common token does not include the token identified as unimportant; and
a record comparator configured to compare the current record with each of the selected records to determine whether the current record matches any of the selected records.

US Pat. No. 10,191,941

ITERATIVE SKEWNESS CALCULATION FOR STREAMED DATA USING COMPONENTS

1. A computing-system-implemented method for calculating a skewness for an adjusted computation window, the method comprising:initializing, by a computing-device-based computing system, at least one of a sum and a mean, and one or more other components of a skewness for a pre-adjusted computation window of a data stream, wherein the pre-adjusted computation window contains a specified number, n (n?6), of data elements from the data stream and in a buffer on at least one of one or more storage media;
receiving, by the computing-device-based computing system, a data element to be added to the pre-adjusted computation window;
storing the received data element to the buffer;
adjusting, by the computing-device-based computing system, the pre-adjusted computation window by:
removing a least recently received data element from the pre-adjusted computation window; and
adding the to-be-added data element to the pre-adjusted computation window;
iteratively deriving, by the computing-device-based computing system, at least one of a sum and a mean for the adjusted computation window;
directly iteratively deriving, by the computing-device-based computing system and based at least in part on the one or more components of the skewness other than a sum and a mean for the pre-adjusted computation window, one or more components of a skewness other than a sum and a mean for the adjusted computation window, wherein the directly iteratively deriving includes:
accessing the removed data element and the added data element without accessing all data elements in the adjusted computation window thereby saving computing resources and reducing the computing-device-based computing system's power consumption;
accessing the one or more components of the skewness other than a sum and a mean for the pre-adjusted computation window; and
removing any contribution of the removed data element from each of the accessed components mathematically and adding any contribution of the added data element to each of the accessed components mathematically wherein not all data elements in the adjusted computation window are used in the computation to reduce number of operations performed by the computing-device-based computing system thereby increasing calculation efficiency; and
generating, by the computing-device-based computing system, a skewness for the adjusted computation window based on one or more of the iteratively derived components.

US Pat. No. 10,191,940

GESTURE-BASED SEARCHING

Microsoft Technology Lice...

1. A method comprising:receiving, via an input device, a flick gesture, the flick gesture comprising a continuous non-marking substantially linear gesture;
in response to the received flick gesture, determining if one or more search terms displayed in an interface is selected;
when one or more search terms is selected, performing a search using the selected one or more search terms; and
when one or more search terms is not selected,
causing a search query box to be displayed in the interface;
receiving one or more search terms through the search query box; and
performing a search using the one or more search terms received through the search query box.

US Pat. No. 10,191,938

EDITING OF VOLUME OF DATA

1. A method for editing a volume of data, the method comprising:displaying, via a graphical user interface, a subset of the volume of data as a plurality of pre-existing graphical patterns, the plurality of pre-existing graphical patterns representing data points of magnitude over time;
selecting, from the displayed subset of the volume of data, a portion of the plurality of pre-existing graphical patterns of the subset of the volume of data, the portion representing a temporal range of data points;
modifying, via the graphical user interface, at least one pre-existing graphical pattern of the selected portion of the plurality of pre-existing graphical patterns in relation to at least one other pre-existing graphical pattern of the selected portion of the plurality of pre-existing graphical patterns;
defining, by a processor, a first graphical search pattern with the at least one other pre-existing graphical pattern and the modified at least one pre-existing graphical pattern of the plurality of pre-existing graphical patterns of the selected portion of the subset of the volume of data;
generating at least one query based on the first graphical search pattern;
applying the at least one query to the volume of data;
determining whether the at least one query results in at least one hit in the volume of data that matches the first graphical search pattern; and
carrying out a predefined action when the at least one hit is determined or modifying the at least one query when the at least one hit is not determined.

US Pat. No. 10,191,936

TWO-TIER STORAGE PROTOCOL FOR COMMITTING CHANGES IN A STORAGE SYSTEM

Oracle International Corp...

1. One or more non-transitory computer-readable media storing instructions which, when executed by one or more hardware processors, cause execution of operations comprising:receiving, by a first tier of a multi-tier storage system from a client, a request to store an object within the multi-tier storage system, the object comprising (a) data and (b) metadata corresponding to the data;
transmitting, by the first tier of the multi-tier storage system, the metadata to a metadata tier of the multi-tier storage system;
receiving, by the first tier of the multi-tier storage system, a first acknowledgement that a metadata record has been created in the metadata tier for storing the metadata corresponding to the data, the metadata record being created with a pending status;
responsive to receiving the first acknowledgement of the metadata record, transmitting, by the first tier of the multi-tier storage system, the data to a data tier of the multi-tier storage system;
receiving, by the first tier of the multi-tier storage system, a second acknowledgement that a data record has been created in the data tier for storing the data, the data record being created with a pending status;
responsive to receiving the second acknowledgement that the data record has been created in the data tier, updating the metadata record to a committed status;
responsive to determining that the metadata record in the metadata tier has the committed status, updating the data record in the data tier to the committed status;
wherein, to enforce strong consistency, a transaction for storing the object is not committed until at least the metadata record has been updated to the committed status.

US Pat. No. 10,191,935

DATABASE IDENTIFIER GENERATION IN TRANSACTION PROCESSING SYSTEMS

International Business Ma...

1. A method for transaction processing using a database of a transaction processing system, comprising:initiating, by one or more processors, a generation of an identifier based, at least in part, on definitions of both a primary range and a secondary range that are respectively represent either an instance range or a partition range, wherein a definition of the secondary range includes a maximum number of values in the secondary range;
obtaining, by one or more processors, a unique sequence value from a unique sequence range of known maximum number of values;
calculating, by one or more processors, an offset value based on the primary range and the secondary range, wherein calculating the offset value includes:
determining, by one or more processors, a first product by multiplying a value included in the primary range and the maximum number of values in the secondary range;
adding, by one or more processors, the first product to a value included in the secondary range to generate a first total; and
multiplying, by one or more processors, the first total by the maximum number of values in the unique sequence range;
adding, by one or more processors, the offset value to the unique sequence value to generate an identifier value; and
processing a transaction of a plurality of transactions by using the generated identifier value as a database primary key in the database of the transaction processing system.

US Pat. No. 10,191,932

DEPENDENCY-AWARE TRANSACTION BATCHING FOR DATA REPLICATION

Oracle International Corp...

1. A method comprising:reading a plurality of change records corresponding to a plurality of transactions that were executed at a source database but have not been executed at a target database;
generating inter-transaction dependency data comprising at least one inter-transaction dependency relationship between transactions in the plurality of transactions;
generating a batch transaction comprising a first transaction of the plurality of transactions;
based on the inter-transaction dependency data, detecting that a second transaction of the plurality of transactions is dependent on the first transaction;
based on detecting that the second transaction is dependent on the first transaction, adding the second transaction to the batch transaction;
based on the inter-transaction dependency data, reordering, after said adding, operations that are contained in the batch transaction;
assigning the batch transaction to an apply process for execution at the target database;
wherein the method is performed by one or more computing devices.

US Pat. No. 10,191,931

SYSTEMS AND METHODS FOR GENERATING EVENT STREAM DATA

Visier Solutions, Inc., ...

1. A computer-implemented method of generating data associated with a plurality of subject instances, the method comprising:loading, by at least one processor, event stream data from a plurality of data sources, wherein the plurality of data sources are structured according to different schemas, wherein the event stream data includes a plurality of events associated with changes to one or more attributes associated with at least one of the plurality of subject instances, and wherein the event stream data corresponds to a first time period;
loading, by the at least one processor, correction data comprising a value of at least one attribute associated with the at least one subject instance of the plurality of subject instances;
generating, by the at least one processor based on the correction data, first modified event stream data corresponding to the first time period;
generating, by the at least one processor, a profile for a subject instance of the plurality of subject instances based on the first modified event stream data, wherein the profile comprises a chronology of changes in attributes associated with the subject instance, and wherein the correction data is distinct from the event stream data, the first modified event stream data, and the profile for the subject instance; and
using, by the at least one processor, at least a portion of the correction data to generate second modified event stream data, wherein the second modified event stream data corresponds to a second time period that differs from the first time period.

US Pat. No. 10,191,930

PRIORITY QUEUING FOR UPDATES IN A DATABASE SYSTEM

SAP SE, Walldorf (DE)

1. A method comprising:receiving, by a computing device, a list of subscribers at a set interval time, wherein each subscriber includes one or more updates in which an update to data stored in a database is required;
selecting, by the computing device, a queue process in a plurality of queue processes based on a first selection process, wherein different queue processes are used over multiple set interval times;
using, by the computing device, the queue process to place subscribers in the list of subscribers in a plurality of queues using a placement process that is based on a characteristic of the subscribers, wherein the queue processes in the plurality of queue processes use different placement processes to place subscribers in the plurality of queues; and
retrieving, by the computing device, subscribers from the plurality of queues based on a second selection process, the retrieved subscribers being provided to the plurality of processors for processing of the respective one or more updates for the subscribers.

US Pat. No. 10,191,929

SYSTEMS AND METHODS FOR SNP ANALYSIS AND GENOME SEQUENCING

NOBLIS, INC., Reston, VA...

1. A system for determining whether a single-nucleotide polymorphism is indicated in a data structure digitally representing a genomic sequence, comprising;a processor; and
a memory storing instructions executable by the processor to cause the system to:
receive data comprising a plurality of first data structures, each of the plurality of first data structures representing a respective one of a plurality of nucleic acid sequences;
modify one or more of the received first data structures to align the corresponding one or more nucleic acid sequences, wherein modifying the one or more of the received first data structures comprises:
identifying, in the portion of the received data associated with a first one of the plurality of nucleic acid sequences, a subsequence of the first nucleic acid sequence;
computing a hash of the subsequence to determine a corresponding element of an index, wherein the corresponding element includes position data reflecting one or more positions of a reference nucleic acid sequence containing a part of the subsequence, and wherein the index comprises elements corresponding to potential permutations of the first nucleic acid sequence, wherein the elements of the index are limited, based on statistical methods regarding which permutations are most likely to occur, to less than a total possible number of permutations;
comparing the subsequence with the reference nucleic acid sequence at the one or more positions of the reference nucleic acid sequence;
determining, based on the comparison, whether a number of bases greater than a predetermined threshold number of bases are mismatched; and
determining, when the number of mismatched bases is less than the predetermined threshold number of bases, that the subsequence is aligned with the reference nucleic acid sequence;
store, on a computer storage medium, a second data structure representing the occurrences of nucleic acid bases at a plurality of aligned positions in the plurality of nucleic acid sequences;
generate, based on the plurality of nucleic acid sequences, a third data structure digitally representing a consensus sequence, wherein the data structure comprises a representation of an element of the consensus sequence associated with one of the plurality of aligned positions and a representation of a confidence level associated with the element;
if the system determines that the confidence level associated with the element is less than a first predetermined confidence threshold, modify the consensus sequence to indicate that the confidence level associated with the element is less than a first predetermined confidence threshold, and otherwise do not modify the consensus sequence to indicate that the confidence level associated with the element is less than a first predetermined confidence threshold;
compare the consensus sequence with a third data structure digitally representing the reference nucleic acid sequence, wherein the comparing comprises determining whether the element of the consensus sequence matches a corresponding element of the reference nucleic acid sequence; and
determine, when the element of the consensus sequence and the corresponding element of the reference nucleic acid sequence are mismatched, and when the confidence level associated with the element exceeds a second predetermined confidence threshold, that the element of the consensus sequence is a single nucleotide polymorphism, wherein the second predetermined confidence threshold is different from the first predetermined confidence threshold.

US Pat. No. 10,191,928

PLANAR GRAPH GENERATION DEVICE AND METHOD

FUJITSU LIMITED, Kawasak...

1. A plane graph generation device comprising:a memory; and
a processor configured to execute a process, the process comprising:
selecting first track data that is associated with a smallest specific cost among a collection of track data, the collection of track data including the first track data, a second track data, and a third track data, wherein
each track data in the collection is obtained from a position detection sensor mounted on a moving vehicle and includes a plurality of positional data each representing a position on a path along which the moving vehicle has moved and link data representing links between the positions on the path, and
the specific cost associated with the first track data in the collection is a value that includes a first component and a second component,
the first component, representing complexity of the first track data, includes at least one selected from the group consisting of
 a number of positions in the first track data,
 a number of the links in the first track data, and
 a total length of the links in the first track data, and
the second component, representing a non-nearness between the first track data and each of all the other track data in the collection, includes at least one selected from the group consisting of
 the number of positions of the first track data that are outside a region, the region being represented by the respective positions of the first track data and track data other than the first track data that are within a specific distance of each other,
 the number of links of the first track data that are outside the region,
 the total length of the links of the first track data that are outside the region,
 a surface area determined from the positions and the links of the first track data that are outside the region, and
 a greatest distance between the positions of the first track data that are outside the region;
selecting the second track data based on a specific cost of the second track data being less than a specific cost of the third track data;
if none of the respective positions within the first track data and the second track data is within a predetermined distance from each other, adding the positional data and the link data of the first track data to the second track data; and
if there is a first set of positions within the first track data and a second set of positions within the second track data that are within the predetermined distance from each other, modifying the second track data by changing the second set of positions within the second track data to a first set of positions or to a combination of a first set of positions and a second set of positions; and
generating, based on the second track data, a plane graph in which the positions of the moving vehicle are simplified to be used for analyzing paths along which the moving vehicle has moved.

US Pat. No. 10,191,927

SELECTING PREVIOUSLY-PRESENTED CONTENT ITEMS FOR PRESENTATION TO USERS OF A SOCIAL NETWORKING SYSTEM

Facebook, Inc., Menlo Pa...

1. A method comprising:presenting a plurality of content items stored by a social networking system within one or more feeds of a set of feeds associated with one or more users of the social networking system, each content item presented within a feed corresponding to a user and associated with a time when it is presented within the feed;
selecting candidate content items from the plurality of presented content items, the selected candidate content items including at least one candidate content item representing a story;
generating one or more indices using the selected candidate content items, each generated index associated with one or more candidate content items having one or more attributes associated with the index;
ranking a first one or more candidate content items in an index, the ranking based at least in part on an expected level of interaction by a viewing user different from the one or more users, of the one or more users, with each of the first one or more candidate content items in the index, wherein ranking the first one or more candidate content items in the index further comprising:
determining values associated with each candidate content item in the index, wherein, for at least one candidate content item in the index, a plurality of values are determined for the candidate content item, each value of the plurality of values representing a likelihood that the viewing user is going to perform a different type of interaction of a plurality of types of interactions with the candidate content item; and
ranking the first one or more candidate content items in the index based at least in part on the determined values, further comprising:
modifying the determined values associated with the first one or more candidate content items in the index based on one or more characteristics of the first one or more candidate content items; and
ranking the first one or more candidate content items in the index based at least in part on the modified determined values;
selecting at least one candidate content item, of the first one or more candidate content items, from the index based at least in part on the ranking; and
generating a feed of content not included in the set of feeds, the generated feed presenting the selected candidate content items for a second time and including additional content items to the viewing user.

US Pat. No. 10,191,926

UNIVERSAL DATA PIPELINE

Palantir Technologies, In...

1. A method comprising:at one or more computing devices comprising one or more processors and one or more storage media storing one or more computer programs executed by the one or more processors to perform the method, performing operations comprising:
maintaining a build catalog comprising a plurality of build catalog entries, each build catalog entry comprising
an identifier of a version of a derived dataset corresponding to the build catalog entry,
one or more dataset build dependencies of the version of the derived dataset corresponding to the build catalog entry, each of the one or more dataset build dependencies comprising an identifier of a version of a child dataset from which the version of the derived dataset corresponding to the build catalog entry is derived, and
a derivation program build dependency that is executable to generate the version of the derived dataset corresponding to the build catalog entry;
creating a new version of a particular derived dataset by executing a particular version of a particular derivation program; and
adding a new build catalog entry to the build catalog, the new build catalog entry comprising an identifier of the new version of the particular derived dataset, an identifier of the particular version of the particular derivation program, and at least one identifier of one or more particular child dataset versions that were provided as input to the particular derivation program.

US Pat. No. 10,191,925

DELIVERY OF DIGITAL INFORMATION TO A REMOTE DEVICE

Valve Corporation, Belle...

1. A method for updating a file, comprising:receiving one or more chunks associated with a first version of a digital file that also occur in a third version of the digital file;
receiving one or more different chunks that occur in the third version of the digital file and not in the first version of the digital file;
receiving a manifest that contains, for the third version of the digital file, one or more first file offsets for each occurrence of each of the one or more chunks associated with the first version and one or more third file offsets for each occurrence of each of the one or more different chunks; and
reassembling the third version of the digital file using the one or more first file offsets and instantiations of the one or more chunks associated with the first version and the one or more third file offsets and instantiations of the one or more different chunks without using the entire first version of the digital file;
wherein the third version of the digital file incorporates differences from a second intermediate version between the first version and the third version; and
wherein at least one of the one or more chunks associated with the first version or one of the one or more different chunks appears more than once in the third version of the digital file.

US Pat. No. 10,191,922

DETERMINING LIVE MIGRATION SPEED BASED ON WORKLOAD AND PERFORMANCE CHARACTERISTICS

Oracle International Corp...

1. A method comprising:transferring a number of database connections for database sessions between a source database server and a target database server in a multi-node database management system at a rate of transfer;
at each stage of a plurality of stages of transferring said database connections, changing the rate of transfer based on a default rate established for each said stage, wherein at a particular point of time during said transferring, said transferring is at a current stage of said plurality of stages;
tracking performance of both the source database server and the target database server, wherein the tracking performance of both the source database server and the target database server comprises:
comparing database runtime performance statistics from the source database server to database runtime performance statistics from the target database server;
based on tracking performance of the source database server and the target database server and said current stage, making adjustments to the rate of transfer.

US Pat. No. 10,191,919

METHOD AND APPARATUS FOR PRESENTING POINT OF INTEREST CHANGES

HERE GLOBAL B.V., Veldho...

1. A method for presenting one or more visual representations for conveying information about at least one point-of-interest change, the method comprising:receiving status information associated with one or more points of interest from one or more public permit databases, wherein the status information indicates at least one of an ownership change, a corporate information change, a closing or opening status change other than a change in business hours and/or hours of operation, or a combination thereof;
determining, by at least one processor based at least in part on the status information, one or more point-of-interest changes, one or more transitions between the one or more point-of-interest changes, or a combination thereof,
wherein the one or more point-of-interest changes and/or transitions include, at least in part, one or more location changes, one or more type changes, one or more operational state changes, or a combination thereof associated with at least one of the one or more points of interest;
causing, at least in part, a generation of one or more representation objects associated with the one or more point-of-interest changes and/or transitions;
causing, at least in part, a mapping of the one or more point-of-interest changes and/or transitions to one or more mapped visual representations based on the status information and the one or more representation objects,
wherein the one or more mapped visual representations include a color change, a transparency change, a scale change, an additional text, one or more icons, a distortion, an animation, or a combination thereof that are based on the one or more of the ownership change, the corporate information change, the closing or opening status change of the one or more points of interest, or a combination thereof, and
causing, at least in part, a presentation on at least one point-of-interest user interface of the one or more mapped visual representations regarding the at least one point-of-interest change associated with the at least one of the one or more points of interest which is undergoing changes or had undergone recent development.

US Pat. No. 10,191,918

CONCEPTS FOR ENHANCED LOCATION INFORMATION

United Parcel Service of ...

1. A computerized method for performing a location-based search, the computerized method comprising:receiving, by a mobile device associated with a user, an indication of a geographic area from the user;
receiving, by the mobile device, input from the user, identifying (a) a distance parameter and (b) a search criteria for the geographic area for a point of interest having a reference location information;
providing, by the mobile device, (a) the distance parameter and (b) the search criteria for a search to be performed based on the geographic area and the search criteria to a network device, wherein the network device is in communication with one or more vehicles that send and receive data, wherein data sent from the one or more vehicles is processed by a mapping computing entity of the network device to provide to the mobile device, results for the (a) distance parameter and (b) the search criteria for the geographic area for the point of interest having the reference location information;
receiving from the mapping computing entity and displaying, by the mobile device, results for the (a) distance parameter and (b) the search criteria comprising information about the point of interest, wherein the results are provided based on the data sent from the one or more vehicles;
responsive to receiving the results for the (a) distance parameter and (b) the search criteria, monitoring, by the mobile device, the location of the mobile device to determine when the mobile device is within a zone of confidence associated with the point of interest within the distance parameter;
responsive to determining that the mobile device is within the zone of confidence, determining that the mobile device is proximate to the point of interest, and dynamically generating an interface, presented to a display of the mobile device, the interface comprising visible indicia indicating a request for confirmation from the user of the mobile device that the user has arrived at the point of interest and that the reference location information for the point of interest is accurate;
receiving a response from the user, by the mobile device, via the interface; and
transmitting, by the mobile device, the response from the user to the network device.

US Pat. No. 10,191,916

STORAGE SYSTEM COMPRISING CLUSTER FILE SYSTEM STORAGE NODES AND SOFTWARE-DEFINED STORAGE POOL IN CLOUD INFRASTRUCTURE

EMC IP Holding Company LL...

1. An apparatus comprising:a multi-tier storage system comprising at least a front-end storage tier and a back-end storage tier;
the multi-tier storage system being implemented at least in part utilizing a plurality of virtual machines of cloud infrastructure;
the front-end storage tier comprising:
a plurality of storage nodes of a cluster file system with the storage nodes being implemented on respective ones of the virtual machines; and
a software-defined storage pool accessible to the storage nodes and implemented utilizing local disk resources of respective ones of the virtual machines;
the back-end storage tier being separate from the software-defined storage pool and comprising at least one object store;
wherein the multi-tier storage system is configured to recover from a failure in the local disk resources of a given one of the virtual machines by obtaining corresponding data from the local disk resources of one or more other ones of the virtual machines via the software-defined storage pool;
wherein a capacity of the software-defined storage pool is automatically adjustable by adjusting sizes of at least a subset of the virtual machines; and
wherein the cloud infrastructure is implemented by a processing platform comprising a plurality of processing devices.

US Pat. No. 10,191,914

DE-DUPLICATING DISTRIBUTED FILE SYSTEM USING CLOUD-BASED OBJECT STORE

EMC IP Holding Company LL...

1. A method of storing file system data, comprising:receiving, at a processor, a request to store a file comprising a plurality of chunks of file data;
determining, by the processor, to store at least a first subset of the plurality of chunks of file data based at least in part on a chunk identifier, wherein a second subset of the plurality of chunks of file data are already stored at a remote storage;
determining, by the processor, a deduplication chunk size for the plurality of chunks of file data of the first subset, wherein the deduplication chunk size facilitates achieving a desired deduplication performance when storing the first subset of the plurality of chunks of file data, and wherein the deduplication chunk size is larger than a chunk size of a chunk included in the first subset of the plurality of chunks;
selecting, by the processor, which chunks of the first subset of the plurality of chunks of file data to combine into a single stored object that satisfies the deduplication chunk size associated with the desired deduplication performance;
combining, by the processor, the selected chunks of the first subset of the plurality of chunks of file data into the single stored object satisfying the deduplication chunk size; and
providing, by the processor, the single stored object that includes the combined selected chunks of the first subset of the plurality of chunks of file data to the remote storage, wherein the remote storage is configured to store the provided single stored object, and wherein storing the single stored object achieves a better deduplication performance than would be achieved if the combined selected chunks were stored individually.

US Pat. No. 10,191,913

SYSTEM AND METHOD FOR EFFICIENTLY PROVIDING MEDIA AND ASSOCIATED METADATA

Spotify AB, Stockholm (S...

1. A method of seeking within media content, comprising:at an electronic device with one or more processors and memory:
obtaining, from a remote device, a file header for a file that corresponds to a plurality of clusters, wherein:
the file header includes a cluster index that enables coarse searching within the file, and
the file header omits information that is known to or calculable by the electronic device for extracting content from the file, wherein the omitted information was previously removed at the remote device from the file header before the file header was obtained by the electronic device;
generating the omitted information that was removed at the remote device;
adding the omitted information into the file header;
receiving a request to seek to a position within the file;
in response to receiving the request:
identifying a cluster of the plurality of clusters that includes content that corresponds to the position based on the cluster index;
obtaining a cluster header associated with the cluster based on information retrieved from the cluster index, wherein the cluster header includes a content index that enables fine searching within the cluster;
obtaining cluster data associated with the cluster; and
after obtaining the cluster header, identifying, within the cluster, the content that corresponds to the position based on the content index; and
after identifying the content that corresponds to the position and adding the omitted information into the file header, providing at least a portion of content corresponding to the file to a presentation device for presentation to a user, starting with the content that corresponds to the position.

US Pat. No. 10,191,912

SHARED DECOMPRESSION ENGINE

Oracle International Corp...

1. A method comprising:receiving a first selection of a second compression type at a selector that is connected to a format circuit and a decompression circuit and is configured to receive a selection between a first compression type and the second compression type;
in response to receiving the first selection, converting a first data stream compressed with the second compression type into a second data stream of the first compression type by:
decoding the first data stream into entity indicators, literal bytes, and length-distance entities with a decoder that is connected to a control byte generator and the format circuit,
generating control bytes from the entity indicators with the control byte generator, which is connected to the decoder and the format circuit,
inputting the control bytes, the literal bytes, and the length-distance entities into the format circuit, which is connected to the decoder, the control byte generator, and the selector, and
formatting the control bytes, the literal bytes, and the length-distance entities into the second data stream of the first compression type with the format circuit;
inputting the second data stream into the selector; and
decompressing the second data stream using the decompression circuit, which is connected to the selector and is capable of decompressing a data stream compressed using the first compression type.

US Pat. No. 10,191,911

PERMANENT WEBSITE HOSTING ON MOBILE DEVICES

Plesk International GmbH,...

3. A method for hosting a website, comprising:on a mobile device having an operating system and a supervisory component installed thereon, running a webserver application under control of the supervisory component;
running a control panel application on the mobile device, the control application configured to set parameters of the webserver application,
wherein the webserver application is in a sleep mode and wakes up in response to a command from the supervisory component;
generating a website using documents and files of other applications that are stored on the mobile device;
waking the webserver application in response to an HTTP request received from a network port when the mobile device is connected to a mobile network; and
giving the webserver application permission to access the documents and files of the other applications through the control panel.

US Pat. No. 10,191,910

SYSTEMS AND METHODS FOR IMPROVING STORAGE EFFICIENCY IN AN INFORMATION HANDLING SYSTEM

Dell Products L.P., Roun...

1. An information handling system including an increased storage efficiency, comprising:a first storage resource and a plurality of second storage resources, wherein a reliability of the first storage resource is greater than a reliability of each of the plurality of second storage resources, the reliability based on a reliability factor; and
a processor associated with the first storage resource and the plurality of second storage resources, wherein the processor is configured to:
determine a weight of a file portion;
determine a number of copies of the file portion to be stored based at least on the determined weight;
determine a storage capacity of the first storage resource;
compare the determined storage capacity of the first storage resource with a predetermined capacity threshold;
determine a storage capacity of the plurality of second storage resources when the determined storage capacity of the first storage resource is greater than the predetermined capacity threshold;
determine an adjusted storage threshold when the determined storage capacity of the plurality of second storage resources is less than the predetermined capacity threshold; and
store a copy of the file portion on the first storage resource when the determined number of copies of the file portion is greater than a predetermined storage threshold;
wherein the reliability factor includes at least one of data integrity, restorability, bit error rate analysis, mean time between failure analysis, annual failure rate, age, and speed of the storage resource.

US Pat. No. 10,191,907

LEGAL DISCOVERY TOOL IMPLEMENTED IN A MOBILE DEVICE

RICOH COMPANY, LTD., Tok...

1. One or more non-transitory computer-readable storage media storing instructions which, when processed by one or more processors, cause:a mobile data collection manager generating a collector based, at least in part, on collection definition data that specifies one or more data types to be searched on a target device and one or more data computer resources to be searched on the target device;
wherein the mobile data collection manager is implemented in a mobile device;
wherein the collector is configured to perform a data search, on the target device, of data specified by the collection definition data;
the mobile data collection manager storing the collector on the mobile device;
the mobile data collection manager causing to transmit the collector from the mobile device, via one or more computer networks, to a network server for storing the collector in the network server;
wherein the network server is separate from the mobile device and separate from the target device;
the mobile data collection manager generating, and causing to be transmitted to a custodian, a notification for notifying the custodian of the target device that the collector is available for downloading from the network server to the target device for execution on the target device;
wherein executing the collector on the target device includes the collector to:
selectively determine one or more data files that have certain characteristics that correspond to the one or more data types specified in the collection definition data of the collector downloaded, in response to a custodian request that is received in response to the notification sent by the mobile data collection manager to the custodian, from the network server, via the one or more computer networks, to the target device, and that are hosted on the one or more data computer resources of the target device and are specified in the collection definition data of the collector downloaded to the target device from the network server;
collect the one or more data files from the target device; and
store the one or more data files in the network server.

US Pat. No. 10,191,906

CREATION AND IMPLEMENTATION OF DESIGNATED TIME POINTS IN A VERSION EXPIRATION ENVIRONMENT

EMC IP HOLDING COMPANY LL...

1. A method for generating information suitable for use in managing backed up data, comprising:defining a sequence format, where the sequence format includes a plurality of numeric fields that are each associated with a respective partial definition of one or more designated points in time;
parameterizing one of the numeric fields such so that such numeric field embraces a range of possible values;
specifying a condition for one of the parameterized numeric fields;
specifying a parameter value for the condition; and
generating a sequence of designated points in time by running a sequence definition that includes the condition, parameterized numeric field and parameter value, where each designated point in time corresponds to a respective curtain that is associated with one or more rules which, when executed, assign an expiration time to one or more backup versions.

US Pat. No. 10,191,903

CUSTOMIZED AND CONTEXTUAL TRANSLATED CONTENT FOR TRAVELERS

MICROSOFT TECHNOLOGY LICE...

1. A customized translated content system, comprising:a local database of a user device, the local database configured to store translated content;
a user context generator configured to determine one or both of (i) a location of the user device and (ii) contextual information for the user device, the contextual information indicative of content of interest to a user of the user device; and
a custom content generator engine configured to
generate customized translated content for the user, wherein the customized translated content includes (i) a plurality of phrases in a source language and (ii) corresponding translations of phrases, in the plurality of phrases, from the source language to a target language, and wherein generating the customized translated content includes selecting, from generalized translated content stored in the local database, respective phrases of the plurality of phrases, wherein the selecting is based on the one or both of the determined location of the user and the determined contextual information for the user; and
cause the customized translated content to be displayed to the user such that the selected plurality of phrases and corresponding translations are surfaced to the user from the local database of the user device without requiring a phrase query input from the user of the user device.

US Pat. No. 10,191,902

METHOD AND UNIT FOR BUILDING SEMANTIC RULE FOR A SEMANTIC DATA

WIPRO LIMITED, Bangalore...

1. A method for building semantic rule for a semantic data, comprising:receiving, by a semantic rule building unit, one or more actions performed by a user on a visualization user interface associated with the semantic rule building unit,
processing, by the semantic rule building unit, the one or more actions to determine a plurality of clauses comprising at least antecedent clauses and consequent clauses associated with the semantic rule;
determining, by the semantic rule building unit, a sequence associated with the plurality of clauses based on the one or more actions;
generating, by the semantic rule building unit, the semantic rule for the semantic data based on the determined sequence, wherein generating the semantic rule comprises the steps of:
obtaining one or more nodes and one or more edges associated with the sequence;
comparing the one or more nodes and the one or more edges thus obtained with corresponding nodes and edges derived from the predetermined semantic rule structure;
obtaining a plurality of string fragments comprising at least one of Unique Resource Identifier (URI) and a unique variable information associated with the one or more nodes and the one or more edges based on the comparison; and
appending the plurality of string fragments to generate the semantic rule; and
displaying, by a display device, the semantic rule.

US Pat. No. 10,191,901

ENROLLMENT PAIRING ANALYTICS SYSTEM AND METHODS

MATTERSIGHT CORPORATION, ...

1. A system adapted to pair students with instructors for enrollment, comprising:a network server comprising a processor and a computer readable medium operably coupled thereto, the computer readable medium comprising a plurality of instructions stored in association therewith that are accessible to, and executable by, the processor, where the plurality of instructions comprises:
instructions that, when executed, receive a plurality of student communications from a student device and receive a plurality of instructor communications from an instructor device;
instructions that, when executed, apply a linguistic-based psychological behavioral model to the plurality of student and instructor communications to determine a personality type of the students and the instructors and to detect keywords and phrases used by the students and instructors;
instructions that, when executed, apply a scoring algorithm to the detected student and instructor keywords and phrases;
instructions that, when executed, generate scores using the linguistic-based psychological behavioral model, including a score that indicates a need for resources, for each of the student communications and for the instructor communications from comparison of the detected keywords and phrases with a plurality of keywords and phrases stored in a library on a server;
instructions that, when executed, aggregate the student scores by personality type and by instructor;
instructions that, when executed, correlate the aggregated student scores and instructor scores with historical student data;
instructions that, when executed, create an evaluation report that provides guidance for a plurality of students for enrollment based on the correlated scores, wherein the report is displayed on the student device; and
instructions that, when executed, direct resources to a student based on the score that indicates a need for resources.

US Pat. No. 10,191,900

METHOD AND APPARATUS FOR PROCESSING SEMANTIC ANALYSIS RESULT BASED ON ARTIFICIAL INTELLIGENCE

BAIDU ONLINE NETWORK TECH...

1. A method for processing a semantic analysis result based on artificial intelligence, comprising:determining, by at least one computing device, a plurality of analysis results of input text received from a user;
determining, by the at least one computing device, weights of analysis texts in a corresponding analysis result of the analysis results according to preset weight configuration information;
detecting, by the at least one computing device, a semantic confidence of the analysis result via a pattern matching algorithm;
determining, by the at least one computing device, an analysis type of the analysis texts by a first classification model;
determining, by the at least one computing device, a field matching confidence of the analysis texts over the analysis result by a second classification model;
obtaining, by the at least one computing device, analysis quality data of the analysis result according to the weights, the semantic confidence, the analysis type, and the field matching confidence;
comparing, by the at least one computing device, the analysis quality data of a plurality of analysis results to a preset quality threshold;
deleting, by the at least one computing device, at least one of the analysis results that does not reach to the quality threshold;
sorting, by the at least one computing device, analysis results that reach to the threshold; and
feeding back the sorted analysis results to the user.

US Pat. No. 10,191,899

SYSTEM AND METHOD FOR UNDERSTANDING TEXT USING A TRANSLATION OF THE TEXT

Comigo Ltd., Yarkona (IL...

1. A method for automatically determining content of a text associated with video media content and for generating an output based on the content, the method comprising:a) obtaining, by a processor associated with a media playing device or with a set top box feeding said media playing device, a first segment of text in a first language, said first segment of text being part of subtitles in said first language of video media content played by said media playing device, said subtitles in said first language being generated prior to initiating playing of said video media content by said media playing device;
b) obtaining, by said processor, a second segment of text in a second language, said second segment of text being part of subtitles in said second language of said video media content played by said media playing device, said second segment of text being a translation of said first segment of text, said subtitles in said second language being generated prior to initiating playing of said video media content by said media playing device;
c) using said processor, automatically determining content of said first segment of text, in accordance with a predefined analysis rule, said automatically determining of said content of said first segment of text being done while said media playing device is playing said video media content, said rule including:
i) initially automatically analyzing said first segment of text without using said second segment of text, thereby attempting to unambiguously determine said content of said first segment of text;
ii) in response to determining, during said analyzing of said first segment of text, that said first segment of text contains no ambiguous words which have multiple meanings in said first language, automatically and unambiguously determining said content of said first segment of text;
iii) in response to identifying, during said analyzing of said first segment of text, one or more ambiguous words in said first segment of text which have multiple meanings in said first language, for at least one identified ambiguous word having multiple meanings in said first language:
A) automatically identifying a corresponding word of said second language that appears in said second segment of text and is a translation of said identified ambiguous word;
B) automatically determining whether said corresponding word has an unambiguous meaning in said second language; and
C) in response to determining that said corresponding word has an unambiguous meaning in said second language, automatically assigning said unambiguous meaning of said corresponding word to said identified ambiguous word, and automatically and unambiguously determining said content of said first segment of text based on said assigned unambiguous meaning;
d) generating a recommendation based on said determined content of said first segment of text, said recommendation being for content associated with said video media content or with said first segment of text; and
e) outputting, by said processor, said recommendation.

US Pat. No. 10,191,898

REPRESENTATION OF PEOPLE IN A SPREADSHEET

Microsoft Technology Lice...

1. A computer system, comprising:at least one processing unit; and
at least one memory storing computer-readable instructions that when executed by the at least one processing unit cause the computer system to perform a method for representing a person within a spreadsheet, the method comprising:
determining that a spreadsheet operation involves a person object, wherein the person object comprises a plurality of fields including at least a name and a contact action, wherein the spreadsheet operation treats the person object in a same manner as one or more native spreadsheet objects of the spreadsheet, and wherein the person object is acted upon in a same manner as the one or more native spreadsheet objects; and
in response to determining that the spreadsheet operation involves the person object, configuring a view of the spreadsheet based on a person represented by the person object, wherein configuring the view comprises filtering or sorting the one or more native spreadsheet objects based on the person represented by the person object.

US Pat. No. 10,191,897

DATA FLOW VIEW FOR A SPREADSHEET

Workday, Inc., Pleasanto...

1. A system for a data flow view for a spreadsheet, comprising:an input interface to receive a first spreadsheet and an indication of a spreadsheet cell of interest being located on the first spreadsheet; and
a processor to:
determine a first set of spreadsheet cells that the spreadsheet cell of interest depends on, comprising to:
determine whether a first cell of the spreadsheet cell of interest depends on a second cell of a second spreadsheet, the first spreadsheet being different from the second spreadsheet; and
in response to a determination that the first cell of the spreadsheet cell of interest depends on a second cell of second spreadsheet, add the second cell to the first set of spreadsheet cells;
determine a second set of spreadsheet cells that depends on the spreadsheet cell of interest, comprising to:
determine whether a third cell of third spreadsheet depends on the first cell of the spreadsheet cell of interest, the third spreadsheet being different from the first spreadsheet; and
in response to a determination that the third cell of third spreadsheet depends on the first cell of the spreadsheet cell of interest, add the third cell to the second set of spreadsheet cells;
determine whether a fourth cell of the first set of spreadsheet cells matches a fifth cell of the second set of spreadsheet cells;
in response to a determination that the fourth cell matches the fifth cell, omit including the fourth cell in the first set of spreadsheet cells or the fifth cell in the second set of spreadsheet cells;
provide a spreadsheet cell data flow view for the spreadsheet cell of interest based at least in part on the first set of spreadsheet cells and the second set of spreadsheet cells, comprising to:
determine a new first set of spreadsheet cells that a new spreadsheet cell of interest depends on, wherein a first arrow indicates that the new spreadsheet cell of interest depends on a spreadsheet cell of the new first set of spreadsheet cells; and
determine a new second set of spreadsheet cells that depends on the new spreadsheet cell of interest, wherein a second arrow indicates that a spreadsheet cell of the new second set of spreadsheet cells depends on the new spreadsheet cell of interest; and
in response to a determination that an indication of a new spreadsheet cell of interest is received:
provide a spreadsheet cell data flow view for the new spreadsheet cell of interest.

US Pat. No. 10,191,896

POPULATING USER DATA

SKYPE, Dublin (IE)

1. A computer system for receiving user data comprising:a user terminal having a processor arranged to execute a data receiving application, wherein the data receiving application provides at least one street address field for a transaction, and wherein the user terminal is configured to:
receive user input to commence the transaction; and
issue, responsive to the user input, a notification that a street address for the transaction is required; and
a geographical location device in communication with a location network and arranged to receive the notification, and to identify a geographical location of the user terminal using information from the location network, the geographical location device operable to provide location data from which street address data of a user address is derived and supplied to the data receiving application to automatically communicate the street address data to the data receiving application for populating to the street address field for the transaction.

US Pat. No. 10,191,895

ADAPTIVE MODIFICATION OF CONTENT PRESENTED IN ELECTRONIC FORMS

Adobe Systems Incorporate...

1. A method for adaptively modifying interactive content provided over a network via electronic forms, wherein the method includes one or more processing devices performing operations comprising:transmitting, via a data network and to a first plurality of clients, a first plurality of messages that provide electronic access to a first version of an electronic form, wherein the first version of the electronic form includes first form content with a field configured for receiving narrative content;
receiving, via the first version of the electronic form and from the first plurality of clients, first responsive client communications;
dynamically generating a second version of the electronic form that omits or replaces the first form content associated with a first data category and maintains a second form content associated with a second data category, wherein dynamically generating the second version of the electronic form comprises:
(i) determining that fewer than a threshold number of the first responsive client communications includes data for the field configured for receiving narrative content,
(ii) responsive to determining that fewer than the threshold number of the first responsive client communications includes the data for the field configured for receiving narrative content, determining that the second version of the electronic form includes a field restricted to receiving a discrete value from a specified set of values, wherein the field configured for receiving narrative content and the field restricted to receiving the discrete value from the specified set of values are used for obtaining data in a common data category, and
(iii) selecting the second version of the electronic form based on the second version of the electronic form having the field restricted to receiving the discrete value from the specified set of values rather than the field configured for receiving narrative content; and
transmitting, via the data network and to a second plurality of clients, a second plurality of messages that provide electronic access to the second version of the electronic form.

US Pat. No. 10,191,894

MOBILE DATA AND HANDWRITING SCREEN CAPTURE AND FORWARDING

Microsoft Technology Lice...

1. A computing system comprising:a first memory storing computer-executable instructions configured to control the computing system to:
receive, from a device including a display and a second memory, a screen shot of current display content of the second memory with annotation data related to the current display content appended to the screen shot by the device; and
store in a data store the screen shot with the appended annotation data; and
a processor configured to execute the computer-executable instructions stored in the first memory.

US Pat. No. 10,191,893

INFORMATION EXTRACTION AND ANNOTATION SYSTEMS AND METHODS FOR DOCUMENTS

Open Text Holdings, Inc.,...

1. A method for annotating documents using a context and contiguity analysis module having a processor and a memory for storing logic, the processor executing the logic to perform the method, comprising:receiving training documents, the training documents having annotated words;
identifying a predetermined number of characters preceding and following each annotated word for each of the training documents to determine a context for each of the annotated words;
performing an alignment of an annotated word and its context with characters in a target document;
identifying common sequences between the target document and training corpus, based upon the alignment;
dividing the target document into n-gram strings;
identifying overlapping sequences of characters between the n-gram strings of the target document and the training documents;
assigning an annotation to a word in the target document when the overlapping sequences between the n-gram strings of the target document and the training documents meet or exceed a threshold; and
assigning an annotation to a word in the target document when a common sequence between the target document and the training corpus is found, the annotation comprising an annotation of an annotated word of the training corpus included in the common sequence.

US Pat. No. 10,191,892

METHOD AND APPARATUS FOR ESTABLISHING SENTENCE EDITING MODEL, SENTENCE EDITING METHOD AND APPARATUS

BAIDU ONLINE NETWORK TECH...

9. A sentence editing method being implemented on a computer including one or more processors and a memory storing one or more software units, including an input obtaining unit, a sentence editing model, a sentence output unit, and a training unit, the sentence editing method, comprising:receiving from a user at the input obtaining unit a sentence to be edited;
providing the sentence to be edited to the sentence editing model to obtain a plurality of candidate edited sentences and an editing score of each candidate edited sentence;
selecting a candidate edited sentence having an editing score satisfying a preset requirement as an edited sentence; and
displaying the edited sentence to the user by the sentence output unit,
wherein the sentence editing model is established by:
obtaining from a web search engine, search logs including queries and titles of clicked search results corresponding to the queries to form query-title pairs, each of the queries corresponding to a sentence input into the web search engine;
forming monolingual training corpuses by taking a title in each of the query-title pairs as a sentence to be edited and taking a query in the query-title pair as an edited sentence; and
training a translation model and a first language model using the monolingual training corpuses, to obtain the sentence editing model comprising the translation model and the first language model;
wherein the translation model translates a sentence in a first language to another sentence in the first language.

US Pat. No. 10,191,891

INTERACTIVE PREVIEW TEASERS IN COMMUNICATIONS

Microsoft Technology Lice...

1. A computing device to provide rich visualization of embedded objects, attachments, and links within emails through teasers, the computing device comprising:a memory configured to store instructions; and
one or more processors coupled to the memory, the one or more processors configured to execute, in conjunction with the instructions stored in the memory, a communication application, wherein the one or more processors are configured to:
provide a conversation to be displayed on a conversation user interface, the conversation comprising a plurality of email messages;
detect an embedded object within an email message of the plurality of email messages;
analyze the embedded object to determine one or more teaser components, each of the one or more teaser components including a portion of textual or graphical content included in the embedded object;
conducting a search of an external source for additional information associated with the embedded object based on content included in at least one of the one or more teaser components;
construct a teaser including at least one of the one or more teaser components and the additional information; and
provide the teaser to be displayed within a body of the email message or on a dedicated portion of the conversation user interface without requiring a user to open the email message in a separate user interface.

US Pat. No. 10,191,890

PERSISTENT VIEWPORTS

Microsoft Technology Lice...

1. A method, comprising acts of:identifying an element-of-interest in content of a virtual document, the element-of-interest in a viewport of the virtual document presented on a passive user system;
receiving an update to the content of the virtual document from an active user system;
determining that the update will change the position of the element-of-interest in the viewport on the passive user system and cause the position of the viewport to be adjusted in order for the element-of-interest to be persisted within the viewport;
causing, based on determining that the update will change the position of the element-of-interest in the viewport on the passive user system and cause the position of the viewport to be adjusted in order for the element-of-interest to be persisted within the viewport, an update notification to be displayed by the passive user system, the update notification providing an option to delay incorporation of the update into the virtual document presented on the passive user system;
receiving a selection in response to the update notification; and
causing, in response to receiving the selection, the passive user system to delay input of the update and queue the update for entry into the virtual document presented on the passive user system.

US Pat. No. 10,191,889

SYSTEMS, APPARATUSES AND METHODS FOR GENERATING A USER INTERFACE BY PERFORMING COMPUTER VISION AND OPTICAL CHARACTER RECOGNITION ON A GRAPHICAL REPRESENTATION

Board of Regents, The Uni...

1. A method for at least partially automating the generation of a user interface for a mobile application, the method comprising:performing computer vision processing on an original graphical representation of a proposed user interface, identifying atomic elements within the original graphical representation, and generating a view hierarchy image having one bounding box for each atomic element;
performing optical character recognition on the original graphical representation, identifying words and lines of text within the original graphical representation, and generating a first word image comprising one bounding box per word and a second word image comprising one bounding box per line;
merging the view hierarchy image and the first word image, removing words that conflict with the bounding boxes of the view hierarchy image, and generating a modified first word image;
merging words from the modified first word image and lines from the second word image into text blocks, grouping words that belong together, splitting words that do not belong together, and generating a third word image comprising one bounding box per valid word;
merging the original graphical representation with the third word image and generating a modified graphical representation comprising text boxes and images;
merging the modified graphical representation with the view hierarchy image and generating a modified view hierarchy image that comprises the text boxes and unknown vision boxes;
traversing a vision box hierarchy of the modified view hierarchy image and generating an OS-specific view hierarchy image that comprises image views, text views, and container views;
determining if there are repeated items in the OS-specific view hierarchy image, creating a list view for any repeated items in the OS-specific view hierarchy image, and generating a modified OS-specific view hierarchy image comprising list view items; and
using at least the modified graphical representation and the modified OS-specific view hierarchy image as an input and generating an OS-specific project directory that comprises OS-specific source code and resource files, wherein the OS-specific project directory is capable of being compiled to produce an OS-specific functional executable application having a graphical user interface that emulates the original graphical representation.

US Pat. No. 10,191,888

SEGMENTATION AND STRATIFICATION OF DATA ENTITIES IN A DATABASE SYSTEM

Locus LP, Hamilton (BM)

17. A method for use in a computer system for generating and storing a stratified composite unit of elements, the method comprising:generating and electronically storing in a database system a logical data model having a data structure representing an organization of parent nodes and child nodes for aggregating data entities and aggregating attributes of the data entities in a functional information system, the data entities representing elements of the functional system as a network of heterogeneous components, the data entities further corresponding to elements of the functional system or attributes associated with the elements ordered by their functional roles in a process converting inputs to outputs;
electronically storing a set of data entities in the database system, the data entities corresponding to elements of the functional system;
electronically assigning a data entity corresponding to an element one or more functional attributes, each of the attributes represented as an electronic tag,
wherein the functional attributes group data entities in the logical data model;
receiving a user input of common exposures associated with multiple data entities that correspond to respective multiple elements for inclusion in a stratified composite unit;
stratifying the multiple data entities that correspond to multiple elements into two or more groups based on the electronic tags representing the common exposures associated with the corresponding elements, wherein the first group shares a first common exposure, and the second group shares a second common exposure;
electronically accessing the database representation of the stratified groups;
electronically assigning weights to one or more of the data entities, wherein the assigned weight of a data entity is based on the relative location of the data entities in the stratified composite unit and the weights are calculated such that the sum of weights of data entities in child nodes below a parent node equals the weight of the data entity of a parent node;
electronically storing the assigned weights in association with data entities as the set of data entities in the data structure; and
receiving and storing an update to weights in the data structure, wherein that update corresponds to a change in the functional system, the update based on a process converting inputs to outputs as represented in the logical data model.

US Pat. No. 10,191,887

CONTEXT AFFINITY IN A REMOTE SCRIPTING ENVIRONMENT

Microsoft Technology Lice...

1. A computer-implemented method for providing context affinity in a remote scripting environment by creating a plurality of runspaces, each of the plurality of runspaces associated with a connection between a local computer and a remote computer, wherein each of the plurality of runspaces is associated with a global context object, the method comprising:initiating, on the local computer that transmits remote session commands, a remote scripting component;
creating, by the remote scripting component, a connection between the local computer and the remote computer, wherein said creating the connection creates a particular run space of the plurality of runspaces;
initiating, by the remote scripting component, a global context object associated with the connection, wherein the global context object includes a variable providing a context to execute one or more remote session commands via the particular runspace;
determining, by the remote scripting component at the local computer, that a connection pool is available from a dictionary stored on the local computer, wherein the connection pool is associated with the plurality of runspaces;
based at least partly on a determination that the connection pool is available, determining, by the remote scripting component that the connection between the local computer and the remote computer is available in the connection pool;
based at least partly on a determination that the connection between the local computer and the remote computer is available in the connection pool:
sending, by the remote scripting component from the local computer to the remote computer via the connection, a first remote session command to be executed by the remote computer in the particular runspace;
sending, by the remote scripting component from the local computer to the remote computer via the connection, the global context object;
receiving, by the remote scripting component at the local computer, result data based at least partly on execution of the first remote session command within the particular runspace based on the variable included in the global context object providing the context for the particular runspace;
updating, by the remote scripting component based at least in part on the result data, the global context object at the local computer to generate an updated global context object; and
sending, by the remote scripting component from the local computer to the remote computer, the updated global context object with a second remote session command to be executed by the remote computer in the particular runspace;
wherein the second remote session command is executed within the particular runspace using the updated global context object as updated after execution of the first remote session command;
wherein the global context object creates a context affinity between the first remote session command executed by the remote computer and the second remote session command executed by the remote computer;
wherein creating a context affinity between the first remote session command and the second remote session command executed by the remote computer includes using both the connection and the global context object when executing the first remote session command and the second remote session command; and
wherein each of the plurality of runspaces maintains a global context object and wherein the global context object of a runspace allows two or more commands to be executed within the runspace when the two or more commands do not share a common context by defining a new shared context for executing the two or more commands.

US Pat. No. 10,191,886

GESTURE CONTROLLED CALCULATOR

1. A gesture controlled calculator comprising:a) a touch screen input device and output device;
b) a microprocessor; and
c) a permanent memory comprising computer code to cause said microprocessor to carry out the steps of:
i) receive from a user through a virtual keyboard presented in said touch screen a multiplication problem, said multiplication problem comprising a multiplicand and a multiplier wherein said multiplicand and multiplier each comprise one or more digits and wherein each of said digits is associated with a place value;
ii) upon receipt of said multiplication problem, display on said touch screen:
(1) a work plan area comprising:
(a) said multiplication problem; and
(b) a planning arrow touch target;
(2) a multiplication machine area; and
(3) a totals tracker area;
iii) upon receipt of at least a touch gesture from said user in said planning arrow, carry out the steps of:
(1) separate said multiplication problem into one or more easy multiplication problems wherein each of said easy multiplication problems comprises:
(a) one of said digits of said multiplier with said digit's place value preserved; and
(b) said multiplicand;
(2) display each of said easy multiplication problems in said work plan area; and
(3) display a horizontal selection arrow touch target next to each of said easy multiplication problems;
iv) upon receipt of at least a touch gesture from said user in one of said selection arrow touch targets associated with one of said easy multiplication problems, carry out the steps of:
(1) move said selected easy multiplication problem into said times machine area;
(2) display in a header of said times machine area a very easy multiplication problem associated with said selected easy multiplication problem, said very easy multiplication problem comprising:
(a) the multiplier digit of said selected easy multiplication problem without its place value preserved; and
(b) said multiplicand;
(3) display below said header a stack of said multiplicands wherein:
(a) the number of said multiplicands in said stack is equal to said multiplier digit of said selected easy multiplication problem; and
(b) the digits of said multiplicands in said stack are aligned in columns;
(4) display around each digit of said multiplicands in said stack a virtual digit card;
(5) display an equals bar below said stack of said multiplicands;
(6) display said selected easy multiplication problem at the bottom of said multiplication machine in a problem statement box; and
v) upon receipt of at least a touch gesture from said user in one of said digit cards in one of said columns of digit cards, carry out the steps of:
(1) move all of said digit cards in said selected column of digit cards below the equals bar;
(2) overlap said digits cards in said selected column of digit cards to form a single digit card in a solution position below said equals bar;
(3) display the sum of said digit cards in said selected column of digit cards in said single digit card below said equals bar;
(4) when said sum of said digit cards in said solution position is a two digit number comprising a tens digit and a ones digit, carry out the steps of:
(a) upon receipt of at least a touch gesture by said user in said digit card in said solution position, carry out the steps of:
(i) display a digit card above the next left most column of said digit cards and display said tens digit therein; and
(ii) display said ones digit in said digit card in said solution position;
(5) when all of said digit cards in said stack of multiplicands have been moved below said equals bar and the sums thereof are displayed in digit cards in solution positions below said equals bar, carry out the steps of:
(a) display the solution to said selected easy multiplication problem next so said easy multiplication problem displayed in said solution box;
(b) display a horizontal transport arrow touch target next to said solution to said selected easy multiplication problem; and
(6) upon receipt of at least a touch gesture in said transport arrow, carry out the steps of:
(a) move said solution to said selected easy multiplication problem to an appropriate row in said totals tracker area; and
(b) upon the movement of the solutions of all of said easy multiplication problems to said totals tracker area, carry out the steps of:
(i) present virtual digit cards around each digit of said solutions to said easy multiplication problems displayed in said totals tracker area such that said digits of said solutions to said easy multiplication problems are in columns in said totals tracker area;
(ii) upon receiving at least a touch gesture in one of said digit cards in one of said columns in said totals tracker area, carry out the steps of:
1) move all of said digit cards in said selected column in said totals tracker area below an equals bar in said totals tracker area;
2) overlap said digit cards from said selected column in said totals tracker area to form a single digit card in a solution area in said totals tracker area;
3) display within said digit card in said solution area of said totals tracker area the sum of said digit cards in said selected column in said totals tracker area;
4) when said sum of said digit cards in said selected column in said totals tracker area is a two digit number comprising a tens digit and a ones digit, carry out the steps of:
a) display said tens digit of said two digit number in said digit card in said solution area of said totals tracker area in a digit card above the top row of the next left column of said digit cards in said totals tracker area; and
b) display said ones digit of said two digit number in said digit card in said solution area of said totals tracker area; and
(iii) when all of said digit cards in said totals tracker area have been moved below said equals bar in said totals tracker area, display the solution to said multiplication problem in said solution area of said totals tracker area.

US Pat. No. 10,191,884

MANAGING A MULTI-LANE SERIAL LINK

Hewlett Packard Enterpris...

1. A method for managing a multi-lane serial link, comprising:establishing a serial link between a number of integrated circuits across a first number of lanes, in which the first number of lanes comprises a subset of a number of available lanes on the serial link;
selecting to change a transmission state of a second number of lanes, in which the second number of lanes comprises a subset of the available lanes;
changing the transmission state of the second number of lanes while transmitting data on a number of remaining lanes; and
after receiving an indication that the transmission state of the second number of lanes has been changed, synchronizing the first number of lanes and the second number of lanes.

US Pat. No. 10,191,882

METHOD AND SYSTEM FOR AGGREGATION-FRIENDLY ADDRESS ASSIGNMENT TO PCIE DEVICES

Futurewei Technologies, I...

1. A peripheral component interconnect express (PCI-e) system comprising:a processor operable to perform a method of assigning addresses to nodes of a topology tree of the PCI-e system, comprising:
(a) assigning addresses to the PCI-e topology tree, said (a) comprising:
traversing, at a level and in a breadth direction, down-link couplings to an interconnection of the PCI-e system;
ascertaining, at the level, which of the down-link couplings are connected to nodes, and incrementing an update counter based on detection of an additional depth level; and
assigning contiguous addresses, at the level, to nodes of ascertained down-link couplings that have nodes;
(b) propagating the level of the PCI-e topology tree, said (b) comprising:
traversing, at the level and in a depth direction, down-link couplings to the interconnection of the PCI-e system;
ascertaining, at the level, which of the down-link couplings are coupled to other interconnections in the depth direction; and
consecutively proceeding, in the depth direction, to a next level of down-link coupling of a next interconnection; and
(c) repeating alternately (a) and (b) until the nodes are assigned addresses, wherein, if there are no down-link couplings at the level, proceeding up to a previous level based on the update counter to ascertain additional down-link couplings.

US Pat. No. 10,191,881

MODIFICATIONS TO A STREAM PROCESSING TOPOLOGY DURING PROCESSING OF A DATA STREAM

Hewlett Packard Enterpris...

1. A method comprising:receiving a first topology that communicatively couples a plurality of processing elements via a first arrangement of interconnections to perform an operation on a stream of data;
defining a second topology that communicatively couples the plurality of processing elements via a second arrangement of interconnections that is different from the first arrangement of interconnections to perform the operation on the stream of data, wherein the second topology assigns the plurality of processing elements a first set of operations;
providing the second topology to a stream processing manager;
modifying the second topology during processing of the stream of data by assigning a second set of operations to the plurality of processing elements that is different from the first set of operations; and
processing the stream of data according to the modified second topology without providing the modified second topology to the stream processing manager.

US Pat. No. 10,191,877

ARCHITECTURE FOR SOFTWARE DEFINED INTERCONNECT SWITCH

Intel Corporation, Santa...

21. A system comprising:a plurality of hosts, wherein each host comprises a respective processor device;
a plurality of devices; and
a switch comprising a control host, wherein the plurality of hosts are connected to respective upstream ports of the switch, the plurality of devices are connected to respective downstream ports of the switch, and the control host comprises:
a dedicated processor device;
memory; and
software executable by the processor device to process traffic received at one or more ports of the switch to redirect at least a portion of the traffic to provide one or more enhanced routing capabilities,
wherein the enhanced routing capabilities comprise:
a simple assignment capability to dynamically assign one or more of the devices to respective hosts of the switch; and
a virtual assignment capability to define virtual partitions of resources provided by the devices and assign each partition to a respective one of the hosts.

US Pat. No. 10,191,876

DEVICE AND METHOD FOR ADDRESSING, AND CONVERTER

1. A system, comprising:a device adapted to connect to a bus;
wherein the device is adapted to implement a single logical slave as a bus participant in a first mode and at least two logical slaves as bus participants in a second mode;
wherein the first mode is a standard addressing mode, and the second mode is an expanded address mode;
wherein the device includes a reversing logic adapted to shift the device from the first mode to the second mode to switch the device from a standard address to an expanded address to implement the at least two logical slaves in a single addressing process, the at least two logical slaves being made available as bus participants immediately after the addressing;
wherein the at least two logical slaves are operable in the second mode in the expanded address mode in respective cycles by an address assigned by a standard addressing signal; and
wherein the at least two logical slaves have profiles that differ from each other.

US Pat. No. 10,191,875

TECHNIQUES OF PROVIDING SERIAL PORT IN NON-LEGACY SYSTEM VIA EMBEDDED-SYSTEM DEVICE

AMERICAN MEGATRENDS, INC....

1. A method of operating an embedded-system device, comprising:receiving first command or data through a first serial port of the embedded-system device;
exposing a second serial port to a host of the embedded-system device such that the host has control over the second serial port and receiving second command or data from the host for outputting at the second serial port;
redirecting the first command or data to the second serial port when the embedded-system device is in a first mode; and
allowing the second command or data to be output at the second serial port when the embedded-system device is in a second mode;
wherein the redirecting the first command or data includes, in the first mode:
constructing third command or data based on the first command or data; and
sending the third command or data to the second serial port for outputting.

US Pat. No. 10,191,874

METHOD AND APPARATUS FOR PROVIDING USB POWER DELIVERY NEGOTIATED THROUGH A DEDICATED TRANSMISSION CHANNEL

MICROCHIP TECHNOLOGY INCO...

1. A USB interface to provide power delivery negotiated through a dedicated transmission channel, the USB interface comprising:a transmitter circuit including a digital-to-analog converter having an output coupled with an input of a transmission filter;
a receiver circuit including an analog-to-digital converter having an input coupled with an output of a receiving filter; and
a switching circuit configured in a first operating mode of the USB interface to connect an output of the transmission filter and an input of the receiving filter to a first connection node of the dedicated transmission channel.

US Pat. No. 10,191,873

METHOD AND APPARATUS FOR POWER REDUCTION FOR DATA MOVEMENT

Advanced Micro Devices, I...

1. A method in a device, of transferring data including:determining by a controller a first difference between a first transferred data segment and a first data segment to be transferred of a plurality of data segments to be transferred;
determining by the controller a second difference between the first transferred data segment and a second data segment to be transferred of the plurality of data segments to be transferred, the second data segment being separate from the first data segment;
determining by the controller an ordered second data segment based on the first difference and the second difference to re-create an order of the ordered second data segment relative to the first data segment, the ordered second data segment being the data segment to be transferred having the smallest difference relative to the first transferred data segment; and
transmitting by the transmitter the ordered second data segment as the next data segment of the plurality of data segments to be transferred that is transferred after transfer of the first data segment.

US Pat. No. 10,191,872

SEMICONDUCTOR DEVICE AND CONTROL METHOD OF SEMICONDUCTOR DEVICE

Renesas Electronics Corpo...

1. A semiconductor device comprising:a CPU section configured to execute a plurality of software modules; and
a hardware IP configured to perform processing based on operation requests transmitted by the CPU section,
wherein the hardware IP includes
a first storage unit including a plurality of control receiving units configured to receive the operation requests transmitted by respective ones of the software modules,
a calculation unit configured to perform processing based on the operation requests transmitted from the control receiving units to generate response information, and
an arbitration unit configured to control information transmission between the control receiving units and the calculation unit such that the calculation unit receives only one of the operation requests at a time from any one of the control receiving units, and
wherein, while forming a first information transmission path between the calculation unit and one of the control receiving units, the arbitration unit transmits the operation request output from the one of the control receiving units to the calculation unit and transmits the response information generated based on the transmitted operation request from the calculation unit to the one of the control receiving units.

US Pat. No. 10,191,871

SAFE DOUBLE BUFFERING USING DMA SAFE LINKED LISTS

Infineon Technologies AG,...

1. A Direct Memory Access (DMA) controller, comprising:a set of transaction control registers configured to receive a sequence of transaction control sets which are arranged in a linked list and which collectively describe a data transfer by which the DMA controller is to move data, wherein the data transfer is to move the data from a peripheral and alternatingly to a first memory buffer and a second memory buffer, the first and second memory buffers being arranged in parallel with one another at an interface of the peripheral; and
wherein the DMA controller is configured to transfer a first portion of the data from the peripheral to the first memory buffer according to a first transaction control set in the sequence, and is configured to subsequently transfer a second portion of the data from the peripheral to the second memory buffer according to a second transaction control set in the sequence; and
an integrity checker configured to determine an actual error detection code based on the first and/or second portions of the data or an address actually processed by the DMA controller during execution of the first and/or second transaction control sets, the integrity checker being further configured to selectively flag an error based on whether the actual error detection code is the same as an expected error detection code contained in a third transaction control set in the sequence.

US Pat. No. 10,191,870

DATA POLLING USING A CHAIN SLEEP TECHNIQUE

BAKER HUGHES, A GE COMPAN...

1. A computer-implemented method for data polling using a chain sleep technique, the method comprising:computing, by a processing device, a least common multiplier (LCM) based on a polling time for each of a plurality of devices deployed in a well operation to be polled;
generating, by the processing device, a sequence of polling elements, wherein each of the polling elements represents a multiple of the polling time for each of the plurality of devices, wherein the sequence of polling elements begins with the lowest polling time and ends with the LCM;
sorting, by the processing device, the sequence of polling elements from lowest value to highest value as an ordered list;
calculating, by the processing device, a distance between each of the polling elements of the ordered list;
generating, by the processing device, a polling chain based on the ordered list and the distance between each of the polling elements; and
polling, by the processing device, the plurality of devices in the well operation based on the polling chain.

US Pat. No. 10,191,869

INPUT DEVICE WITH MULTI-HOST SWITCHING

Logitech Europe S.A., La...

1. A method of switching wireless connections between a plurality of data input devices and a plurality of host computing devices, the method comprising:establishing a first direct wireless connection between a first data input device and a first host computing device from the plurality of host computing devices, and independently establishing a second direct wireless connection between a second data input device and the first host computing device;
determining a predetermined location on a display of the first host computing device that is configured to be triggered by a cursor entering the predetermined location on the display;
receiving a user input from the first data input device that causes the cursor to enter the predetermined location;
in response to determining that the cursor has entered the predetermined location on the display:
sending a first command to the first data input device that causes the first data input device to establish a direct wireless connection between the first data input device and a second host computing device from the plurality of host computing devices and break the direct wireless connection between the first data input device and the first host computing device; and
sending a second command to the second data input device that causes the second data input device to establish a direct wireless connection between the second data input device and the second host computing device and break the direct wireless connection between the second data input device and the first host computing device.

US Pat. No. 10,191,868

PRIORITY FRAMEWORK FOR A COMPUTING DEVICE

AMPERE COMPUTING LLC, Sa...

1. A system for managing priority to a memory subsystem, comprising:a first level memory access handling unit configured to generate memory access requests in accordance with corresponding instructions originating from multiple levels of a computing system architecture, the multiple levels comprising at least an application level, a network level, an operating system level, and a micro-architectural level, wherein the first level memory access handling unit is of a higher level of the computing system architecture relative to the memory subsystem, and the instructions generated by the multiple levels have associated priority indicators assigned in accordance with prioritization schemes respectively associated with the multiple levels, the priority indicators comprising first priority indicators assigned to a first subset of the instructions originating at the application level based on user-defined application priorities, second priority indicators assigned to a second subset of the instructions originating at the network level based on a determination of whether the instructions originate from the network level or an internal level, and third priority indicators assigned to a third subset of the instructions originating at the operating system level based on a determination of whether the third subset of the instructions are associated with an interrupt at the operating system level; and
a memory controller unit of the memory subsystem configured to receive the memory access requests and the priority indicators, and to assign respective memory access priorities of the memory access requests based on the priority indicators.

US Pat. No. 10,191,867

MULTIPROCESSOR SYSTEM HAVING POSTED TRANSACTION BUS INTERFACE THAT GENERATES POSTED TRANSACTION BUS COMMANDS

Netronome Systems, Inc., ...

1. An integrated circuit comprising a plurality of rectangular islands disposed in a two-dimensional array, wherein the rectangular islands are intercoupled by a posted transaction bus, wherein one of the rectangular islands comprises:a first processor;
a second processor that executes the same instruction set that the first processor executes; and
an interface means for receiving addresses from the first processor via a first bus and for receiving addresses from the second processor via a second bus and for interfacing to the posted transaction bus, wherein neither the first bus nor the second bus is a posted transaction bus, wherein an address received by the interface means via the first bus is an address in shared address space shared by the first and second processors, wherein the interface means generates a posted transaction bus read command from the address received via the first bus and causes a posted transaction bus read transaction to occur using the generated posted transaction bus read command such that read data is obtained from the posted transaction bus and is then stored into a shared memory in the interface means at a memory location indicated by the first processor.

US Pat. No. 10,191,866

MEMORY CONTROLLER FOR SELECTIVE RANK OR SUBRANK ACCESS

1. A memory controller integrated circuit, comprising:transaction queue circuitry to implement transaction queues;
a register to store a selective one of a first mode select value and a second mode select value;
command path circuitry to receive memory access commands from the transaction queues and to transmit the memory access commands to first and second memory devices over a common command path connection; and
data exchange circuitry to exchange data with the first and second memory devices via respective first and second data paths; wherein based on the first mode select value the command path circuitry is to drive the common command path connection responsive to a single one of the transaction queues, and the data exchange circuitry is to responsively exchange data via both of the respective first and second data paths in association with each memory access command from the single one of the transaction queues; and
wherein based on the second mode select value
the command path circuitry is to is to drive the common command path connection to time-multiplex first and second memory access commands from respective transaction queues, and
the data exchange circuitry is to concurrently exchange first data in association with the first memory access command via the first data path and second data in association with the second memory access command via the second data path.

US Pat. No. 10,191,865

CONSOLIDATING WRITE TRANSACTIONS FOR A NETWORK DEVICE

Amazon Technologies, Inc....

1. A network device comprising:a network interface operable to send and receive a packet;
a bus interface operable to send and receive bus traffic on a bus; and
processing logic coupled to the bus interface and the network interface, wherein the processing logic is operable to:
store information associated with the packet in a queue;
mask interrupts for the network device;
send an interrupt to a host processor to notify the host processor of completion of packet processing;
receive, by the bus interface, a Memory-Mapped Input/Output (MMIO) write transaction that includes an update for a pointer associated with a completion queue and an interrupt unmasking value;
update the pointer associated with the completion queue; and unmask the interrupts for the network device based on the MMIO write transaction.

US Pat. No. 10,191,864

STANDARDIZED INTERFACE FOR STORAGE USING AN INPUT/OUTPUT (I/O) ADAPTER DEVICE

Amazon Technologies, Inc....

1. An Input/Output (I/O) adapter device comprising:a storage device interface configured to communicate with a first storage device and a second storage device communicatively coupled to the I/O adapter device;
a host interface configured to communicate with a host device communicatively coupled to the I/O adapter device, wherein the host device is configured to run an operating system and wherein the operating system executes a standardized storage frontend driver to communicate with the I/O adapter device through the host interface and using a standardized interface implemented in the operating system; and
a processing core communicatively coupled to the storage device interface and to the host interface, wherein the processing core is configured to execute a plurality of computer-executable instructions to execute:
a first emulated storage backend driver to communicate with the standardized storage frontend driver through the host interface using the standardized interface, and to communicate with the first storage device, to provide the standardized storage frontend driver with access to the first storage device; and
a second emulated storage backend driver to communicate with the standardized storage frontend driver through the host interface using the standardized interface, and to communicate with the second storage device, to provide the standardized storage frontend driver with access to the second storage device.

US Pat. No. 10,191,860

SECURING SENSITIVE HISTORIAN CONFIGURATION INFORMATION

Schneider Electric Softwa...

1. A computer system comprising:a cloud-based data store comprising a plurality of data sets in at least one storage account thereof, at least one of the data sets storing time series data representative of historical plant process information and at least one other of the data sets storing configuration information, wherein the configuration information is configured for use by a cloud service associated with the data store, and wherein the configuration information comprises at least an access key related to the storage account; and
a service role terminal, comprising:
one or more processors coupled to the cloud service and a process historian via a data communication network, wherein the service role terminal is coupled between the cloud service and the process historian; and
a memory device coupled to the one or more processors, said memory device storing computer-executable instructions that, when executed by the one or more processors, cause the service role terminal to perform a method for securely providing the configuration information to the cloud service, wherein the method comprises:
receiving, by the service role terminal, the configuration information related to the cloud service downloaded from the process historian when the service role terminal is authorized for said receiving according to a deploy service role of the cloud service;
storing, by the service role terminal, the received configuration information in a configuration data file;
applying, by the service role terminal, a public certificate without a private key to the configuration data file to transform the configuration data file into a protected configuration data file; and
uploading, by the service role terminal, the protected configuration data file to the cloud service, wherein configuration settings of the uploaded protected configuration data file are available for reading by the cloud service via the public certificate while the configuration data file is protected, and wherein the uploaded protected configuration data file is available for querying by a query service role of the cloud service while the configuration data file is protected.

US Pat. No. 10,191,859

MEMORY ACCESS PROTECTION APPARATUS AND METHODS FOR MEMORY MAPPED ACCESS BETWEEN INDEPENDENTLY OPERABLE PROCESSORS

Apple Inc., Cupertino, C...

1. A method for providing access to a shared memory resource, comprising:during a boot process of a second processor:
generating, by a first processor, a first window register value associated with the shared memory resource;
transmitting the first window register value from the first processor to a window register of the second processor, the first window register value defining a first extent of address space within the shared memory resource that is directly accessible by the second processor; and
wherein the first extent of address space is mapped to a memory map of the second processor during the boot process.

US Pat. No. 10,191,858

VIRTUAL MACHINE MEMORY LOCK-DOWN

1. A method of memory lock-down, the method comprising:storing, by a guest virtual machine, a secure datum at a location within a memory range;
responsive to storing the secure datum, sending, by the guest virtual machine, a request to disable access to the memory range;
receiving, by a hypervisor from the guest virtual machine, the request to disable access to the memory range;
disabling, by the hypervisor, access to the memory range;
detecting, by the hypervisor, a prohibited access attempt, wherein the prohibited access attempt is an access attempt to the memory range;
responsive to detecting the prohibited access attempt, stopping, by the hypervisor, the guest virtual machine;
receiving, by the hypervisor, a request to reboot the guest virtual machine;
rebooting, by the hypervisor, the guest virtual machine; and
responsive to rebooting the guest virtual machine, enabling, by the hypervisor, access to the memory range.

US Pat. No. 10,191,856

METHOD OF MANAGING WEB BROWSER CACHE SIZE USING LOGICAL RELATIONSHIPS AND CLUSTERING

Yandex Europe AG, Lucern...

1. A computer-implemented method for managing a browser cache, the method comprising:storing in a cache of a web browser on a user device a plurality of web pages visited by a user during one or more web browsing sessions;
generating a web page identifier for each web page of the plurality of web pages;
defining a plurality of clusters of the plurality of web pages stored in the cache by:
determining logical relationships among the plurality of web pages stored in the cache, and
associating each web page of the plurality of web pages with one or more clusters of the plurality of clusters based on the determined logical relationships among the plurality of web pages such that each given cluster of the plurality of clusters includes at least one web page of the plurality of web pages, a list of identifiers, and a unique cluster identifier, the list of identifiers including the web page identifier of each web page of the at least one web page of the given cluster;
upon detecting a usage size of the cache equal to or exceeding a threshold value, determining, based on information associated with the plurality of clusters, at least a portion of at least one cluster of the plurality of clusters to be deleted from the cache, the information associated with the plurality of clusters including at least: (i) the list of identifiers and (ii) the unique cluster identifier of each cluster of the plurality of clusters; and
deleting from the cache at least the portion of the at least one cluster based on at least one corresponding web page identifier of the list of identifiers of the at least one cluster.

US Pat. No. 10,191,854

EMBEDDED RESILIENT DISTRIBUTED DATASET SYSTEMS AND METHODS

Levyx, Inc., Irvine, CA ...

1. An embedded memory system, comprising:a logical block addressing table that maps logical block addresses to secondary memory addresses of a secondary memory having a second type of memory;
a data block table having:
a secondary address portion that maps data block addresses to logical block addresses of the logical block addressing table, and
a primary address portion that maps data block addresses to physical memory addresses of a primary memory having a first type of memory, wherein the first type of memory and the second type of memory are different; and
a read module programmed to:
receive a request to read a data block at a first data block address from a first thread;
correlate the first data block address to a first physical memory address using the primary address portion of the data block table; and
return a read-only pointer to the first physical memory address to the first thread.

US Pat. No. 10,191,853

APPARATUS AND METHOD FOR MAINTAINING ADDRESS TRANSLATION DATA WITHIN AN ADDRESS TRANSLATION CACHE

ARM Limited, Cambridge (...

1. An apparatus comprising:an address translation cache having at least one entry, each entry to store address translation data used when converting a virtual address into a corresponding physical address of a memory system;
control circuitry to perform an allocation process to determine the address translation data to be stored in each entry;
the control circuitry arranged when performing the allocation process for a selected entry in the address translation cache:
to perform a page table walk process using a virtual address in order to obtain from a page table a plurality of descriptors including a descriptor identified using the virtual address;
to determine whether predetermined criteria are met by said plurality of descriptors, said predetermined criteria comprising page alignment criteria and attribute match criteria, each descriptor comprising physical address data and attribute data identifying a plurality of attributes, and the attribute match criteria allowing the plurality of descriptors to have different values for a first subset of the attributes when determining that the attribute match criteria is met;
when said predetermined criteria are met, to generate coalesced address translation data from said plurality of adjacent descriptors and to store said coalesced address translation data in said selected entry; and
in absence of said predetermined criteria being met, to generate address translation data from the descriptor identified using the virtual address and to store that address translation data in said selected entry.

US Pat. No. 10,191,852

METHODS AND APPARATUS FOR LOCKING AT LEAST A PORTION OF A SHARED MEMORY RESOURCE

Apple Inc., Cupertino, C...

1. A method for locking a shared memory, comprising:attempting to lock at least a portion of the shared memory by a first processor;
verifying whether a second processor has locked the at least the portion of the shared memory;
responsive to determining that the at least the portion of the shared memory is successfully locked based on the verifying whether the second processor has locked the at least the portion of the shared memory, executing a critical section, the critical section comprising one or more computer instructions accessible only to the first processor; and
otherwise, responsive to determining, based on the verifying whether the second processor has locked the at least the portion of the shared memory, that the at least the portion of the shared memory is not successfully locked, attempting to lock the at least the portion of the shared memory at a later time.

US Pat. No. 10,191,851

METHOD FOR DISTRIBUTED TRANSACTION PROCESSING IN FLASH MEMORY

TSINGHUA UNIVERSITY, Bei...

1. A method for distributed transaction processing in a flash memory, comprising the following steps:S1. performing two-phase commit on a transaction and removing a state log record of a two-phase commit protocol, wherein the function and information stored in the state log record of the two-phase commit protocol is internalized as an operation on flash memory metadata in a transaction interface, thereby removing the step of creating and updating the state transaction log file for the two-phase commit; wherein final commit of a coordinator is used as a distributed transaction end identifier;
S2. in a process of performing the transaction, storing a temporary data object as a shadow version,
using a shadow mapping table to store an address of the shadow version or the state of a page in the transaction processing, wherein the shadow mapping table is a memory structure that records the address of the shadow version in the first phase of the two-phase commit and records the state of the page participating in the transaction in the second phase of the two-phase commit,
using page metadata to record transaction information wherein the page metadata is an out-of-band (OOB) area of a flash memory page,
using a transaction metadata page to record a transaction state wherein the transaction metadata page stored in a transaction state table is used to determine whether the transaction is committed or aborted: the shadow mapping table records commit identifier, and the transaction metadata page records transaction commit, and
using the transaction state table to record an address of the transaction metadata page, wherein the transaction state table is a persistently stored mapping table, and before the transaction metadata page is written, the transaction state table stores a mapping from a transaction identification (ID) to the address of the transaction metadata page; and
S3. when the coordinator or a participant fails, scanning a part of the storage, reading the flash memory metadata, and recovering a FTL mapping table, the shadow mapping table, and the transaction state table to determine the state of the transaction in the two-phase commit with the state log record of the two phase commit protocol removed;
wherein the step S2 further comprises: when the transaction is written, the shadow mapping table stores a location of new data; and
the page metadata records logic page number, the transaction ID, and the quantity of transaction pages, and when the transaction is committed, the location of the new data is updated to the FTL mapping table and changed to a user readable state; the shadow mapping table records a commit identifier, and the transaction metadata page records transaction commit; if the transaction is aborted, the shadow mapping table records an abort identifier, and the transaction metadata page records transaction abort, and the new data is set as invalid;
if a flash memory block is used completely and all transactions on the flash memory block are completed, the flash memory block is marked as a CHECKED block; if there is an uncompleted transaction, the flash memory block is marked as a WAIT block; if the flash memory block is partially used, the flash memory block is marked as an UPDATE block; if the flash memory block is not used, the flash memory block is marked as a FREE block; and the first page of the block is used to differentiate a block state;
when a failure occurs in the two-phase commit process, the FTL mapping table, the shadow mapping table, and the transaction state table are recovered to determine the transaction state, and the WAIT block and the UPDATE block are scanned,
wherein the step S3, when the coordinator or a participant fails, scanning a part of the storage, reading the flash memory metadata, and recovering the FTL mapping table, the shadow mapping table, and the transaction state table to determine the state of the transaction in the two-phase commit, comprises the following steps:
step (1): scanning and finding all UPDATE blocks and WAIT blocks,
step (2): scanning the UPDATE blocks, recovering the FTL mapping table, the shadowing mapping table, and the transaction state table, and determining a transaction state on these blocks: a mapping (Logic Page Number (LPN), transaction ID, (TxID)) is written in page metadata and the transaction metadata page is located before all transaction data ages; and pages on the UPDATE blocks are scanned in sequence; and
step (3): scanning the WAIT block, and reading the transaction identification from the page metadata.

US Pat. No. 10,191,850

PROVIDING MEMORY BANDWIDTH COMPRESSION USING MULTIPLE LAST-LEVEL CACHE (LLC) LINES IN A CENTRAL PROCESSING UNIT (CPU)-BASED SYSTEM

QUALCOMM Incorporated, S...

1. A central processing unit (CPU)-based system comprising:a system memory;
a system cache;
a last-level cache (LLC) comprising a plurality of LLC lines each sized to store a plurality of sub-lines corresponding to a plurality of system cache lines of the system cache; and
a compressed memory controller (CMC), comprising a memory interface configured to access the system memory and the system cache via a system bus, and communicatively coupled to the LLC;
the CMC configured to:
receive, from the system cache, a memory read request comprising a memory address;
determine whether the memory address corresponds to a valid sub-line of the plurality of sub-lines within an LLC line of the plurality of LLC lines of the LLC; and
responsive to determining that the memory address does not correspond to a valid sub-line of the plurality of sub-lines within an LLC line of the plurality of LLC lines of the LLC:
read a master table entry containing an offset value and a length value for the LLC line from a master table in the system memory;
retrieve one or more blocks from the system memory based on the memory address, the offset value, and the length value;
store data from the retrieved one or more blocks in a sub-line of the plurality of sub-lines within an LLC line of the plurality of LLC lines of the LLC; and
return the data from the retrieved one or more blocks to the system cache.

US Pat. No. 10,191,848

SYSTEM AND METHOD FOR CACHING TIME SERIES DATA

InMobi PTE Ltd., Singapo...

1. A computer system for caching time series data, the computer system comprising:one or more processors;
at least one cache; and
a non-transitory computer readable storage medium,
wherein the non-transitory computer readable storage medium includes instructions that, when executed by the one or more processors, cause the one or more processors to perform a set of steps comprising:
receiving a request for the time series data;
fetching the time series data from a time series data source, wherein the time series data comprises a plurality of time series datum and a fetch timestamp;
calculating one or more expiry timestamps, wherein each expiry timestamp from the one or more expiry timestamps is calculated using a composite function of the fetch timestamp of the time series data and a recording time associated with a time series datum, such that the expiry timestamp is inversely proportional to the recording time associated with the time series datum so that newer time series data expires on or before older time series data, and the expiry time stamp is directly proportional to the fetch timestamp of the time series data;
grouping the plurality of time series datum in to one or more time data chunks based on the one or more expiry timestamps, wherein each time data chunk from the one or more time data chunks comprises a distinct set of time series datum from the time series data;
determining the validity of the one or more time data chunks of the time series data based on the one or more expiry timestamps;
storing a copy of the time series data and the one or more expiry timestamps in the at least one cache;
serving the requests from one of a group consisting of the time series data source and the at least one cache, based on the validity of the one or more time data chunks of the time series data; and
utilizing the one or more expiry timestamps to respond to requests for the time series data.

US Pat. No. 10,191,847

PREFETCH PERFORMANCE

International Business Ma...

1. A computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions readable by a processor to cause the processor to:receive at least a first request in a plurality of requests to pre-fetch data from a stream in a plurality of streams;
assign a confidence level to the at least the first request based on an amount of confirmations observed in the stream, wherein the at least the first request is in a confident state if the confidence level exceeds a specified phase threshold and wherein the at least the first request is in a non-confident state if the confidence level does not exceed the specified phase threshold;
prioritize requests to prefetch data in the plurality of requests having a higher confidence level than the confidence level of the first request to pre-fetch data;deprioritize requests to prefetch data in the plurality of requests that are associated with respective streams with a low prefetch utilization ratio; anddetermine whether to drop the at least the first request based on the confidence level, based upon a prefetch utilization ratio of the stream, and based upon a memory resource utilization threshold.

US Pat. No. 10,191,846

CACHE MEMORY FOR PARTICULAR DATA

TOSHIBA MEMORY CORPORATIO...

1. A cache unit comprising:a first memory configured to temporarily hold data and an address of the data;
a second memory configured to temporarily hold an address of a particular data set in advance, the particular data being not held by the first memory; and
a controller configured to, when an instruction to load first data is made for a first specified address, search for a storage destination of the first specified address, output the data of the first specified address if the storage destination is the first memory, and output the particular data if the storage destination is the second memory, and configured to, when an instruction to store a specified data at a second specified address is made, judge whether the specified data is the particular data or not, store the second specified address and the specified data into the first memory if the specified data is not the particular data, and store the second specified address into the second memory if the specified data is the particular data.

US Pat. No. 10,191,845

PREFETCH PERFORMANCE

International Business Ma...

1. A method, comprising:receiving at least a first request in a plurality of requests to pre-fetch data from a stream in a plurality of streams;
assigning a confidence level to the at least the first request based on an amount of confirmations observed in the stream, wherein the at least the first request is in a confident state if the confidence level exceeds a specified phase threshold and wherein the at least the first request is in a non-confident state if the confidence level does not exceed the specified phase threshold;
prioritizing requests to prefetch data in the plurality of requests having a higher confidence level than the confidence level of the first request to pre-fetch data;deprioritizing requests to prefetch data in the plurality of requests that are associated with respective streams with a low prefetch utilization ratio; anddetermining whether to drop the at least the first request based on the confidence level, based upon a prefetch utilization ratio of the stream, and based upon a memory resource utilization threshold.

US Pat. No. 10,191,844

AUTOMATIC GARBAGE COLLECTION THRASHING MONITORING

Cisco Technology, Inc., ...

1. A method for monitoring a garbage collection process in a business transaction over a computer network, comprising:monitoring, by an agent on a server, the garbage collection process to identify a source of a garbage thrashing in the garbage collection process, the garbage collection process executed in association with one or more business transaction applications executing on the server;
determining, by the agent, a memory usage associated with the garbage collection process;
collecting, by the agent, a plurality of data objects handled by the garbage collection process;
graphing, by the agent, the plurality of data objects handled by the garbage collection process into a memory usage versus time graph, wherein the graph is divided into garbage collection time intervals;
determining, by the agent, a memory usage associated with each of the collected data objects handled by the garbage collection process during each of the garbage collection time intervals based on the graph of the plurality of data objects handled by the garbage collection process;
comparing, by the agent, graphically the memory usage of each of the collected data objects to the memory usage of the garbage collection process by comparing one or more stack traces obtained at a time of creation of the collected data objects to identify one or more commonalities regarding the creation of the collected data objects to identify the source of the garbage trashing;
identifying, by the agent, a suspicious sub-set of the collected data objects that most closely resemble the memory usage of the garbage collection process, wherein the suspicious sub-set of the collected data objects is the source of the garbage thrashing in the garbage collection process; and
reporting, by the agent, the sub-set of identified data objects as the source of the garbage thrashing in the garbage collection process.

US Pat. No. 10,191,843

UNALIGNED DATA COALESCING

Micron Technology, Inc., ...

1. A method for unaligned data coalescing, comprising:receiving a first write command associated with an unaligned portion of data; and
coalescing, using a coalescing tree, the unaligned portion of data with data associated with another write command, wherein a logical address of the unaligned portion of data and a logical address of the data associated with the another write command correspond to a particular logical page.

US Pat. No. 10,191,842

APPARATUS WITH A MEMORY CONTROLLER CONFIGURED TO CONTROL ACCESS TO RANDOMLY ACCESSIBLE NON-VOLATILE MEMORY

VIRIDENT SYSTEMS, LLC, S...

1. An apparatus, comprising:a mother board;
a plurality of processors coupled to the mother board;
an interconnect fabric coupled to the plurality of processors and the mother board;
a first controller means for controlling a first memory channel, the first controller means being distinct from the plurality of processors;
a second controller means for controlling a second memory channel, the second controller means being distinct from the plurality of processors and the first controller means;
one or more DRAM DIMMS coupled to the first controller means and the first memory channel, wherein the first controller means controls the one or more DRAM DIMMS; and
one or more non-DRAM DIMMS coupled to the second controller means and the second memory channel, wherein the second controller means controls the one or more non-DRAM DIMMS, wherein the first controller means, the second controller means, the one or more DRAM DIMMS and the one or more non-DRAM DIMMS are coupled to the motherboard.

US Pat. No. 10,191,841

HOST DEVICE, ACCESS SYSTEM, AND ACCESS METHOD

SHANNON SYSTEMS LTD., Sh...

1. A host device comprising:a storage device storing a physical mapping table;
a processor checking the physical mapping table according to a first logical block address and a second logical block address of an access operation to find a first physical block address, a second physical block address, a first solid state disk (SSD) identification code, and a second SSD identification code; and
an interface, coupled to the processor,
wherein the processor transmits the first physical block address which is found from the physical mapping table to one of a plurality of SSDs through the interface according to the first SSD identification code to access data at the first physical block address and transmits the second physical block address which is found from the physical mapping table to another one of the plurality of SSDs through the interface according to the second SSD identification code to access a horizontal parity code at the second physical block address,
wherein the plurality of SSDs are disposed outside of the processor,
wherein the plurality of SSDs form a redundant array of independent disks (RAID), and the RAID stores the data into a first SSD among the plurality of SSDs and further stores the horizontal parity code and a vertical parity code which correspond to the data respectively into a second SSD and a third SSD among the plurality of SSDs, and
wherein the processor generates the horizontal parity code and the vertical parity code according to the data and checks or recovers the data according to the horizontal parity code and the vertical parity code.

US Pat. No. 10,191,840

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

PHISON ELECTRONICS CORP.,...

1. A mapping table updating method for a memory storage device having a rewritable non-volatile memory module, wherein the rewritable non-volatile memory module has a plurality of physical erasing units, and each of the physical erasing units has a plurality of physical programming units, the mapping table updating method comprising:allocating a mapping table storage area for storing a physical address-logical address mapping table in a buffer memory;
determining whether a remaining storage space of the mapping table storage area is less than a first threshold;
if the remaining storage space is less than the first threshold, updating mapping information of the physical address-logical address mapping table stored in the mapping table storage area into at least one logical address-physical address mapping table;
clearing the mapping information of the physical address-logical address mapping table stored in the mapping table storage area; and
programming a plurality of writing data belonging to a plurality of logical programming units into the physical programming units of an active physical erasing unit among the physical erasing units, establishing a plurality of updated mapping information between the physical programming units programmed with the writing data and the logical programming units, and storing the updated mapping information into the physical address-logical address mapping table in the mapping table storage area,
wherein the logical address-physical address mapping table records a mapping relation between the logical programming units and the physical erasing units, and the physical address-logical address mapping table records a mapping relation between the programmed active physical erasing unit and the logical programming units.

US Pat. No. 10,191,839

SEARCH DEVICE INCLUDES ASSOCIATIVE MEMORY, SEARCH DATA GENERATING UNIT FOR GENERATING SEARCH INFORMATION BASED ON HIT INFORMATION AND A SEARCH KEY GENERATING UNIT GENERATING SEARCH KEYS BASED ON SEARCH INFORMATION AND THE SEARCH DATA

RENESAS ELECTRONICS CORPO...

1. A search device comprising:a first associative memory that is searched with a first search key;
a second associative memory that is searched with a second search key;
a first concatenated search data generating unit that generates first search information based on hit information including multiple hits in the first associative memory; and
a search key generating unit that includes a first search key generating unit generating the first search key based on search data and a second search key generating unit generating the second search key based on the first search information and the search data.

US Pat. No. 10,191,838

METHOD AND DEVICE FOR CHECKING INFLUENCE OF DELETING CACHE FILE, AND MOBILE TERMINAL

BEIJING KINGSOFT INTERNET...

1. A method for checking an influence of deleting a cache file, comprising:acquiring a program to be checked, and acquiring a click path set and a cache path set corresponding to the program to be checked, wherein the click path set includes a plurality of click paths, and the cache path set includes a plurality of cache paths, and each click path set corresponds to a cache path;
acquiring a cache path to be checked in the cache path set, and deleting a cache file to be checked from the cache path to be checked;
conducting a click simulation on the program to be checked according to a click path corresponding to the cache path to be checked; and
acquiring the influence of deleting the cache file to be checked according to an operating result of the program to be checked.

US Pat. No. 10,191,836

SOFTWARE WATCHPOINTS APPARATUS FOR VARIABLES STORED IN REGISTERS

NXP USA, Inc., Austin, T...

1. A method for debugging a compiled computer program comprising one or more variables, the method comprising:generating variable location information for a first variable stored in a CPU register using debug information and runtime disassembly information for the compiled computer program, wherein the first variable comprises a global variable;
generating a search pattern for the first variable based on the variable location information, wherein
the search pattern comprises an address range for the first variable, and
said generating the search pattern comprises creating a regular expression for the first variable;
searching the runtime disassembly information for the search pattern to identify a first program address for the first variable, wherein said searching the runtime disassembly information comprises
searching the runtime disassembly information between the address range to identify the first program address as a machine address for a change of flow pattern that matches the regular expression, and
returning the first program address with a marker flag being set; and
setting a software program watchpoint for the first variable at the first program address.