US Pat. No. 10,115,141

SECURE PROXY SERVICE

Amazon Technologies, Inc....

1. A computing system comprising one or more computing devices, said computing system programmed to implement:a proxy server configured to receive requests, for network resources hosted on third party sites, from browsers hosted on remote computing devices and to perform one or more browser functions on behalf of the browsers hosted on remote computing devices, the proxy server further comprising an anonymizer module, the proxy server configured to:
receive, over a network, a request for a network resource hosted on a third party site, the request received over a secure, encrypted channel from a user computing device configured with a browser application,
wherein the browser application of the user computing device is in communication with the proxy server, and
wherein the request includes browser session and identification data associated with the user computing device, the data comprising at least one of an IP address of the user computing device, a MAC address of the user computing device, a cookie stored on the user computing device, a beacon, a session-id, a request-id, a user agent identifier, or a unique browser identifier;
in response to receiving the request from the user computing device for the network resource hosted on the third party site, transmit over the network, to a network resource provider comprising the third party site, a request for the network resource requested by the user computing device, wherein the request transmitted to the network resource provider does not comprise at least a portion of the identification data included in the request received from the user computing device;
receive, over the network, a first response from the network resource provider comprising the third party site, the first response including a user interface comprising one or more corresponding form fields configured to receive shipping address information to which an item is to be shipped to as part of a transaction;
determine, using an examination of phrases associated with the first response, that the response comprises a shipping webpage comprising shipping form fields;
provide an anonymous shipping control via which the user can indicate whether an anonymous shipping address associated with a different entity than the user, is to be used as a shipment destination is to be used for the shipment of the item, wherein if the user does not activate the anonymous shipping control an anonymous shipping address will not be used for the shipment of the item;
receive, over the network, from the browser application an indication that the user has activated the anonymous shipping control;
receive, over the network, an indication from the user as to which shipping address is to be used as a final destination shipping address;
generate an anonymous email address and assign the anonymous email address to be used, with respect to email communications, only for the transaction involving the shipment of the item;
automatically populate corresponding shipping form fields with the anonymous shipping address, and enable the anonymous shipping address to be provided to the network resource provider;
scan information from a shipping-related label on the item after receipt at the anonymous shipping address, wherein the shipping-related label does not include the final destination shipping address;
identify the final destination shipping address using the information scanned from the shipping-related label on the received item;
cause, at least in part, the received item to be shipped to the final destination shipping address.

US Pat. No. 10,115,137

SYSTEM AND METHOD FOR ENHANCED ACCESS AND CONTROL FOR CONNECTING ENTITIES AND EFFECTING PAYMENTS IN A COMMERCIALLY ORIENTED ENTITY NETWORK

Bill.com, Inc., Palo Alt...

1. A computer-implemented method comprising:determining, by a computer system, a credibility rating for a first corporate entity, wherein the first corporate entity is part of a network of corporate entities;
presenting, by the computer system, a profile of the first corporate entity to a second corporate entity within the network of corporate entities, the profile of the first corporate entity including the credibility rating for the first corporate entity;
receiving, by the computer system, a request to connect with the first corporate entity from the second corporate entity in the network of corporate entities;
in response to the connection request from the second corporate entity, establishing, by the computer system, a connection within the network of corporate entities between the first corporate entity and the second corporate entity, wherein the established connection allows the second corporate entity to view inter-network transactional information between the first corporate entity and one or more corporate entities connected with the first corporate entity within the network of corporate entities; and
effecting, by the computer system and subsequent to establishing the connection between the first corporate entity and the second corporate entity, a closed-loop payment transaction between the first corporate entity and the second corporate entity in response to receiving a request for a payment via the established connection within the network of corporate entities, wherein the network of corporate entities monitors the closed-loop payment transaction and automatically rejects the closed-loop payment transaction if transaction data does not match system data for both the first corporate entity and the second corporate entity.

US Pat. No. 10,115,135

SYSTEM AND METHOD TO SUPPORT DIAMETER CREDIT CONTROL SESSION REDIRECTION USING SCIM/SERVICE BROKER

ORACLE INTERNATIONAL CORP...

1. A method for providing redirection functionality in a telecommunications network having a Charging Trigger Function (CTF) and an online charging system (OCS), the method comprising:providing a Session Redirection Module in a Service Capability Interaction Manager (SCIM) in the telecommunications network;
initiating by the CTF a credit communication session from the CTF to the OCS through the SCIM;
receiving at the SCIM from the CTF a first Credit Control Request (CCR) message, the first CCR message including a first credit communication session identifier used by the CTF to identify the credit communication session;
forwarding the first CCR message by the SCIM to the OCS as a second CCR message, the second CCR message including a second credit communication session identifier used by the SCIM to identify a first portion of the credit communication session initiated by the CTF between the SCIM and the OCS;
receiving at the SCIM from the OCS via the credit communication session a first Credit Control Answer (CCA) message directed to the CTF, the first CCA message being responsive to the second CCR message and including the second credit communication session identifier;
comparing the first CCA message against criteria for redirection using the Session Redirection Module and determining as a first result of the comparing that the first CCA message does not meet the criteria for redirection;
responsive to determining as the first result of the comparing that the first CCA message does not meet the criteria for redirection, forwarding the first CCA message which does not meet the criteria for redirection from the SCIM to said CTF via the credit communication session as a first response CCA message, the first response CCA message including the first credit communication session identifier used by the CTF to identify the credit communication session;
subsequent to receiving the first CCR message at the SCIM and forwarding the first response CCA message from the SCIM to the CTF, receiving at the SCIM from the CTF a third CCR message, the third CCR message including the first credit communication session identifier used by the CTF to identify the credit communication session;
forwarding the third CCR message by the SCIM to the OCS as a fourth CCR message, the fourth CCR message including a third credit communication session identifier used by the SCIM to identify a second portion of the credit communication session initiated by the CTF between the SCIM and the OCS;
receiving at the SCIM from the OCS via the credit communication session a second CCA message directed to the CTF, the second CCA message being responsive to the fourth CCR message and including the third credit communication session identifier;
comparing the second CCA message against the criteria for redirection using the Session Redirection Module and determining as a second result of the comparing that the second CCA message does meet the criteria for redirection; and
responsive to determining as the second result of the comparing that the second CCA message does meet the criteria for redirection:
terminating by the SCIM the second portion of the credit communication session between the SCIM and the OCS;
augmenting by the SCIM the second CCA message which does meet the criteria for redirection as a Redirection CCA message by inserting redirection information associated with an associated service delivery credit unit top-up application into the second CCA message which does meet the criteria for redirection, thereby forming the Redirection CCA message, wherein the Redirection CCA message includes the first credit communication session identifier used by the CTF to identify the credit communication session;
transmitting in the credit communication session the Redirection CCA message from the SCIM to the CTF, wherein the inserted redirection information of the Redirection CCA message redirects the credit communication session by the CTF towards the associated service delivery credit unit top-up application without terminating the credit communication session between the CTF and the SCIM;
receiving in the credit communication session at the SCIM from the CTF a fifth CCR message providing updated credit control information to the OCS, the fifth CCR message having the first credit communication session identifier used by the CTF to identify the credit communication session;
initiating by the SCIM a new portion of the credit communication session between the SCIM and the OCS responsive to receiving the fifth CCR message including the first credit communication session identifier used by the CTF to identify the credit communication session; and
forwarding a sixth CCR message in the new portion of the credit communication session by the SCIM to the OCS, the sixth CCR message comprising the fifth CCR message and having a fourth credit communication session identifier used by the SCIM to identify the new credit communication session initiated by the SCIM between the SCIM and the OCS.

US Pat. No. 10,115,134

ADJUSTING PRINTING PARAMETERS TO MEET A TARGET COST

EASTMAN KODAK COMPANY, R...

1. A method for printing a print job using a printing system, the printing system having attributes and settings specified by a set of printing parameters, wherein an image quality level and cost of documents printed by the printing system are affected by the printing parameters, comprising:receiving a print job including a plurality of document pages;
receiving a target cost for printing the print job;
specifying an initial set of printing parameters;
using the printing system to print a portion of the print job including one or more document pages using the initial set of printing parameters;
determining an actual cost for printing the portion of the print job;
determining an estimated total cost for printing the print job including the actual cost for printing the portion of the print job and an estimated cost for printing a remainder of the print job; and
using a data processing system to automatically determine adjusted printing parameters to be used for printing a subsequent portion of the print job if the estimated total cost exceeds the target cost by more than a predefined tolerance such that a new estimated total cost associated with printing the remainder of the print job with the adjusted printing parameters does not exceed the target cost for the print job by more than the predefined tolerance; and
using the printing system to print the subsequent portion of the print job using the adjusted printing parameters.

US Pat. No. 10,115,131

MANAGING INTERACTIVE COMMUNICATIONS CAMPAIGNS

1. A system for managing communication campaigns, the system comprising:processor; and
memory, wherein the memory has stored therein instructions that, when executed by the processor, cause the processor to:
receive data defining a campaign strategy for a communication campaign, the campaign strategy being associated with a pass having a pass pattern and a criteria for being evaluated for applying an escalation to the pass, the pass pattern identifying a media type for being used during a particular pass;
receive a list of outbound contacts;
transmit a command for initiating an outbound communication to each contact in the list according to the campaign strategy;
during the communication campaign, evaluate the criteria associated with the pass; and
during the communication campaign, apply an escalation to the pass based on the criteria and the identified media type, wherein the instructions that cause the processor to apply the escalation include instructions that cause the processor to switch from a current media type to the identified media type, wherein the current media type is a telephony call, and the identified media type is at least one of email or text message.

US Pat. No. 10,115,130

APPLYING USER PREFERENCES, BEHAVIORAL PATTERNS AND/OR ENVIRONMENTAL FACTORS TO AN AUTOMATED CUSTOMER SUPPORT APPLICATION

West Corporation, Omaha,...

1. A method, comprising:receiving an inquiry from a user device at an interactive voice response (IVR) system;
identifying a plurality of terms associated with at least one predefined topic based on previous interactions between the user device and the IVR system;
calculating a prediction as to a purpose for the received inquiry based on at least one weighted interest related to a number of times the plurality of terms appear; and
transmitting a response to the received inquiry based on the calculated prediction.

US Pat. No. 10,115,127

INFORMATION PROCESSING SYSTEM, INFORMATION PROCESSING METHOD, COMMUNICATIONS TERMINALS AND CONTROL METHOD AND CONTROL PROGRAM THEREOF

NEC Corporation, Tokyo (...

1. An information processing system, comprising:a communications terminal, the communications terminal comprising
a processor comprising a second local feature generation device which extracts n feature points from a video picture and generates n second local features which are respectively feature vectors from one dimension to j dimensions, in respect of n local regions containing each of the n feature points, and
a terminal communications control unit for sending the n second local features; and
an advertisement delivery server in communication with the communications terminal, the advertisement delivery server comprising
a server communications control unit for receiving the n second local features,
a first local feature storage which stores, in association with an object, m first local features that are generated in respect of each of m local regions containing each of m feature points in an image of the object and that are respectively feature vectors from one dimension to i dimensions, and
a processor which comprises
a recognition device which selects a smaller number of dimensions among the number of dimensions i of the feature vectors of the first local features and the number of dimensions j of the feature vectors of the second local features, and recognizes that the object is present in the video picture when determination is made that at least a prescribed ratio of the m first local features which are feature vectors up to the selected number of dimensions corresponds to the n second local features which are feature vectors up to the selected number of dimensions, and
an advertisement information providing device which provides advertisement information relating to the object recognized by the recognition device, wherein the server communications control unit sends the advertisement information to the terminal communications control unit of the communications terminal,
wherein the first local features and the second local features are generated by dividing into a plurality of sub-regions the local regions containing feature points extracted from an image or video picture and by generating feature vectors of a plurality of dimensions which are histograms of gradient directions in the plurality of sub-regions,
wherein the first local features and the second local features are generated by selecting the dimensions having a greater correlation between adjacent sub-regions among the generated feature vectors of a plurality of dimensions.

US Pat. No. 10,115,125

DETERMINING TRAFFIC QUALITY USING EVENT-BASED TRAFFIC SCORING

Excalibur IP, LLC, Sunny...

1. A method, implemented on a machine having at least one processor, storage, and a communication platform capable of making a connection to a network to determine traffic quality, the method comprising:receiving, via a communication platform, data related to a current user event indicating user interaction with online content, wherein the data related to the current user event comprises information regarding a set of entities associated with the current user event;
generating, via at least one processor, a feature value set for the current user event based on the information regarding the set of entities associated with the current user event and on information regarding sets of entities associated with a plurality of past user events, wherein the feature value set measures a diversity in traffic across the entities of the sets based on a breadth of distinct users;
determining, via at least one processor, a traffic quality score for the current user event based at least on the feature value set; and
responsive to the traffic quality score satisfying a criterion, transmitting an alert to an entity of the sets.

US Pat. No. 10,115,120

DYNAMIC DEMAND RESPONSE EVENT ASSESSMENT

FUJITSU LIMITED, Kawasak...

1. A method of demand response (DR) event issue assessment, the method comprising:receiving parameters that include one or more of contractual parameters, ambient condition data, historical data, and energy price data related to two or more sites;
predicting a customer demand and a customer energy curtailment based on one or more of the parameters;
calculating a customer participation likelihood based on one or more of the parameters;
determining a price threshold based on one or more of the parameters, the customer energy curtailment, the customer demand, and the customer participation likelihood;
comparing the price threshold to a predicted energy price;
responsive to the price threshold being greater than the predicted energy price, implementing a DR event, the implementing the DR event including broadcasting DR event criteria to appliances at the sites that include commands that turn the appliances off or on according to a control strategy of the DR event,
wherein:
the price threshold represents an energy price at which issuing a DR event is more profitable than not issuing the DR event; and
the determining the price threshold is performed according to an optimization equation:
min(PiTH)|{E[RDR(Ai)?CostDR(Ai,PiTH)?IncDR(Ai)]?E[R?Cost(PiTH)]}, in which:
min( )|{ } represents an operation to determine a minimum value of a variable in the parentheses ( ) such that a condition in the brackets { } is satisfied;
E[ ] represents an expected value;
PiTH represents a price threshold;
RDR( ) represents a DR event revenue;
CostDR( ) represents a DR event cost;
IncDR( ) represents an incentive paid to participate in a DR event;
R represents a non-DR event revenue;
Cost( ) represents a non-DR event cost;
i represents an interval in which a price threshold is determined; and
Ai represents a random variable that denotes the customer participation likelihood at an interval i.

US Pat. No. 10,115,119

AUDIENCE MIGRATION INFORMATION

iHeartMedia Management Se...

1. An improved audience-reaction analysis tool, the improved audience-reaction analysis tool including a server machine configured to generate audience migration information, and to transmit the audience migration information to an end-user machine for graphical display, the improvement comprising:the server machine further configured to:
obtain media content information from a first source, and session data from a second source, the session data including identifiers identifying consumers and media outlets associated with particular consumer sessions;
generate the audience migration information based on the media content information and the session data, the audience migration information including:
tune-away events associated with a selected media program occurring during a specified time period, wherein a tune-away event is indicated when first session data, associated with a first time period and a first consumer, includes a first content provider identifier associated with a media outlet airing the selected media program during a first session, but subsequent session data, associated with the first consumer and a subsequent time period immediately following the first time period, includes a second content provider identifier different from the first content provider identifier; and
transmit, to the end-user machine:
the audience migration information; and
retrieval information related to the selected media program, the retrieval information sufficient to allow the end-user machine to retrieve the selected media program for playback in conjunction with a graphical display of the audience migration information.

US Pat. No. 10,115,117

OBTAINING AND USING VEHICLE RELATED DATA

ThinxNet GmbH, Munich (D...

1. A method for obtaining and using vehicle related data, the method comprising:maintaining a bonus account that is associated with at least one of a user of a vehicle and a data collection device associated with a vehicle;
receiving, at a server, vehicle related data from the data collection device, wherein the received vehicle related data comprises at least information regarding at least one of a location and a mobility status of the vehicle;
crediting a bonus to the bonus account as a reward for a permission given by the user to process the vehicle related data for marketing purposes; and
processing the vehicle related data for marketing purposes, comprising analyzing, by the server, the received vehicle related data to determine a need for at least one of fuel, service or repair of the vehicle.

US Pat. No. 10,115,116

OPTIMIZING EFFICIENCY AND COST OF CROWD-SOURCED POLLING

MICROSOFT TECHNOLOGY LICE...

1. A system for optimizing computer-based crowd-sourced polling, comprising:a processor; and
a memory comprising instructions that, when executed by the processor, cause the processor to perform a method comprising:
receiving an input query representing a crowd-sourced poll comprising two or more branches, each branch associated with a corresponding set of worker qualifications, the query being formatted as a multi-layer structure;
iteratively reducing the multi-layer structure of the input query to construct a reformulated query, the reformulated query having a reduced complexity relative to the input query;
reducing one or more of expected completion time and expected cost associated with the reformulated query by matching the reformulated query to an optimized execution process selected from a plurality of predefined execution processes;
presenting the reformulated query and matching optimized execution process as an optimized version of the crowd-sourced poll for execution via a computer-based crowd-sourcing backend;
during execution of the optimized version of the crowd-sourced poll, improving poll efficiency by automatically changing the matching optimized execution process to another of the predefined execution processes and dynamically changing the reformulated query to correspond to the automatically changed execution process in response to collected runtime statistics relating to execution of the optimized version of the crowd-sourced poll; and
further during execution, presenting the changed reformulated query and changed matching optimized execution process for continued execution via the computer-based crowd-sourcing backend.

US Pat. No. 10,115,106

SYSTEMS AND METHODS FOR PROVIDING ACH TRANSACTION NOTIFICATION AND FACILITATING ACH TRANSACTION DISPUTES

ACH Alert, LLC, Ooltewah...

1. A method of protecting account holders of financial accounts against a fraudulent transaction communicated to an RDFI within the Automated Clearing House Network, comprising the steps of:receiving through a data communication device operatively enabled for communication within the Automated Clearing House Network, an ACH transaction file generated by another and transmitted to an RDFI within the Automated Clearing House Network, the data communication device being in communication with a processor, client communication device and memory;
analyzing, using the processor, the ACH transaction file received in the data communication device to extract and sort transaction data contained in the ACH transaction file to identify all characteristics of an underlying financial transaction involving a financial account maintained by the RDFI, an execution thereof being dependent upon the ACH transaction file to the RDFI;
comparing, using the processor, the identified transaction characteristics with preset notification criteria stored in the memory in association with the financial account, the preset notification criteria setting forth characteristics of financial transactions which satisfy the notification criteria and a remote client device;
responsive to the preset notification criteria being satisfied by the identified transaction characteristics identified from the transaction data, transmitting, using a client communication device, an electronic communication identifying the identified transaction characteristics of the underlying financial transaction to the remote client device stored in memory, wherein the communication is transmitted independently of the Automated Clearing House Network and includes an electronically returnable response configured to be selectively actuatable to indicate a dispute of the underlying financial transaction; and
transmitting a second electronic communication to the remote client device responsive to the client communication device receiving the electronically returnable response indicating a dispute, the second electronic communication requesting information for actuating a dispute of the underlying transaction contained in the transaction file.

US Pat. No. 10,115,100

OVER THE AIR MANAGEMENT OF PAYMENT APPLICATION INSTALLED IN MOBILE DEVICE

Visa International Servic...

1. A computer-implemented method, comprising:receiving, by a mobile device, an input indicative of a password to access an application installed on the mobile device;
determining, by the mobile device, that a predetermined number of password entry attempts has been reached based on the input;
in response to determining that the predetermined number of password entry attempts has been reached based on the input, transmitting, by the mobile device to a remote computer, a request message to disable access to the application, wherein the remote computer comprises an issuer computer of an issuer of an account configured for use with the application;
receiving, by the mobile device from the remote computer, one or more lock instructions for disabling access to the application automatically in response to the remote computer receiving the request message, wherein the one or more lock instructions are routed through a payment processing network prior to being received by the mobile device; and
executing, by the mobile device, the one or more lock instructions to disable access the application by modifying control data within a secure memory of the mobile device, wherein the control data includes one or more of an access control indicator, an alphanumeric data string, or a set of data values, wherein the secure memory is in a contactless element in the mobile device, and wherein the contactless element is configured to communicate with an access device using NFC (near field communications).

US Pat. No. 10,115,075

RADIO FREQUENCY IDENTIFICATION (RFID) INVENTORY MANAGEMENT SYSTEM

Amazon Technologies, Inc....

1. An inventory control system comprising:a mobile cart configured to receive a bin that includes items tagged with radio frequency identification (RFID) tags, the RFID tags configured to transmit data associated with the items;
an RFID interrogation unit comprising:
a low-conductive material disposed on a top surface of the mobile cart;
a first antenna disposed on the low-conductive material, the first antenna configured to transmit a radio frequency (“RF”) wave at a wavelength, wherein the first antenna comprises:
a first arm connected to a second arm by a first bend, the first arm at a first distance from the second arm, the first distance being substantially one quarter of the wavelength to within a lateral displacement of less than 20%; and
a third arm connected to the second arm by a second bend, the second arm at a second distance from the third arm, the second distance being substantially one quarter of the wavelength to within a lateral displacement of less than 20%; and
a high-conductive material disposed on one or more sides of the mobile cart at a height from the first antenna, the height being substantially one quarter of the wavelength to within a lateral displacement of less than 20%;
an RFID reader electrically coupled to the first antenna, and configured to:
transmit the RF wave to the first antenna to generate an RFID field capable of interrogating the RFID tags;
receive RFID data from the RFID tags; and
identify a number of the items or determine an identifier for the items in the bin based on the RFID data; and
a power source coupled to the RFID reader.

US Pat. No. 10,115,001

BIOMETRIC IMAGE SENSING

IDEX ASA, Fornebu (NO)

1. An assembly combining a fingerprint sensor with a switch, the assembly comprising:a flexible fingerprint sensor comprising:
a flexible dielectric substrate,
a plurality of drive lines configured to transmit a signal, and
a plurality of pickup lines configured to receive at least a portion of the signal transmitted by the drive lines, wherein the pickup lines are oriented transversely to the drive lines and are physically separated from the drive lines by the flexible dielectric substrate to form a sensing area having a two dimensional array of electrode pairs that are impedance sensitive to detect ridge and valley features of a finger proximally located with respect to at least a portion of the sensing area; and
a sensor switch assembly comprising:
a base having a top surface, wherein the sensing area of the flexible fingerprint sensor is disposed over the top surface of the base, and
a switch below the sensing area,
wherein the flexible fingerprint sensor and the sensor switch assembly are constructed and arranged to allow a user to contact the switch by placing a finger on the sensing area over the switch.

US Pat. No. 10,114,984

SYMMETRIC BIT CODING FOR PRINTED MEMORY DEVICES

Xerox Corporation, Norwa...

1. A printed memory reader adapted to determine an original value from a printed memory device comprising a plurality of contact pads and an encoded value created by encoding the original value, the encoded value comprises N bits of data, where N is equal to a number of bits of data stored in the printed memory device, the printed memory reader comprising:a plurality of probes arranged to contact the plurality of contact pads;
a memory storage element comprising instructions programmed to execute the steps:
a) reading the encoded value or an inverse encoded value from the printed memory device using the plurality of probes to obtain a read value, wherein equivalency between the encoded value and the inverse encoded value is not required; and,
b) decoding the read value to obtain a decoded value equal to the original value; and,
a processor arranged to execute the instructions.

US Pat. No. 10,114,965

TECHNIQUES AND SYSTEM TO MONITOR AND LOG ACCESS OF INFORMATION BASED ON SYSTEM AND USER CONTEXT USING POLICIES

NextLabs, Inc., San Mate...

1. A method of managing information comprising:providing an organization having an information management system comprising one or more rules and policy abstractions to manage information of the organization, wherein a rule comprises an expression having a policy abstraction;
within the organization, providing a user at a client and a confidential document managed by the information management system, wherein the client comprises an interceptor code component and a policy engine code component executing on the client, the interceptor code component resides within an operating system layer of the client and is designed to intercept file system library requests received by an operating system installed on the client, and the policy engine code component installed outside of the operating system layer receives information on the intercepted file system library requests; and
when the user at the client attempts to perform an operation on the confidential document, detecting the operation by the interceptor code component by intercepting one or more file system library requests received by the operating system corresponding to the operation, wherein the interceptor code component transfers handling of the document access operation to the policy engine code component, and the policy engine code component evaluates, based on received information associated with the intercepted one or more file system library requests at the operating system by the engine code component installed outside of the operating system layer and the one or more rules, to determine whether to store information regarding the attempted operation in a storage location.

US Pat. No. 10,114,928

METHOD AND DEVICE FOR DOCUMENTING MEDICAL DATA

1. A method for documentation of medical data with a documentation system comprising:receiving with the documentation system data from an operating room, the data captured by at least one data entry device and including video data from a video camera;
automatically activating with the documentation system a storage medium, the activating only in response to sensing with a sensor entry of a patient to be operated upon into said operating room, the sensing including sensing with the sensor an identifier associated with the patient;
storing with the documentation system said data in said storage medium only after said storage medium is activated.

US Pat. No. 10,114,927

APPARATUS AND METHOD FOR ACOUSTIC ALARM DETECTION AND VALIDATION

Koninklijke Philips N.V.,...

3. An alarm detection and validation device comprising:a memory; and
a processing unit configured to:
receive a first signal corresponding to audio detected by a microphone;
receive a second signal from a medical device indicating that the medical device has generated an acoustic alarm;
analyze the first signal to determine whether the detected audio includes the acoustic alarm generated by the medical device by applying a sound classifier to the detected audio so as to identify known alarm sounds included in the detected audio;
determine a current sound pressure level;
use the determined sound pressure level to compare the volume of an acoustic alarm identified in the detected audio with the volume of other sounds included in the detected audio; and
output a third signal to the medical device based on the result of the analysis of the first signal, if the result of the analysis of the first signal is that the detected audio includes the acoustic alarm generated by the medical device.

US Pat. No. 10,114,923

METAGENOMICS-BASED BIOLOGICAL SURVEILLANCE SYSTEM USING BIG DATA PROFILES

EMC IP Holding Company LL...

1. A method comprising:obtaining results of metagenomics sequencing performed on biological camples from respective sample sources;
generating a genomic comparison component comprising hit abundance score vectors for respective ones of the samples based at least in part on the metagenomics sequencing results;
obtaining epidemiological data relating to at least one of a disease, infection or contamination characterized by one or more of the hit abundance score vectors;
generating patient comparative indexes based at least in part on the epidemiological data;
obtaining one or more Big Data profiles relating to one or more of the hit abundance score vectors and one or more of the comparative indexes; and
providing surveillance functionality in a decentralized and privacy-preserving manner utilizing a combination of the hit abundance score vectors and the patient comparative indexes based at least in part on information derived from the one or more Big Data profiles,
wherein providing surveillance functionality further comprises:
performing a preprocessing operation to reduce a biclustering sample space of the genomic comparison component;
wherein the method is implemented by at lease one processing device comprising a processor coupled to a memory.

US Pat. No. 10,114,921

METHOD AND RECORDING MEDIUM OF REDUCING CHEMOEPITAXY DIRECTED SELF-ASSEMBLED DEFECTS

INTERNATIONAL BUSINESS MA...

20. A computer system for reducing chemo-epitaxy directed-self assembly (DSA) detects of a layout of a guiding pattern, said computer system comprising:a processor; and
a memory, the memory storing instructions to cause the processor to perform:
inserting a first external dummy along an external edge of the guiding pattern in a vertical direction; and
inserting an anti-taper structure on the first external dummy if a second distance from the external edge of the guiding pattern to an edge of the first external dummy adjacent to the external edge is greater than a first distance which is determined from the external edge of the guiding pattern to the edge of the first external dummy.

US Pat. No. 10,114,920

METHOD AND APPARATUS FOR PERFORMING SIGN-OFF TIMING ANALYSIS OF CIRCUIT DESIGNS USING INTER-POWER DOMAIN LOGIC

Cadence Design Systems, I...

1. A method for multi-domain timing analysis of a circuit design for an electronic circuit, the circuit design having a plurality of interconnected cells and a plurality of power domains therefor, the power domains establishing respective non-ground voltages provided by different power supplies, the method comprising:establishing a netlist defining the cells of the circuit design, a plurality of timing paths each being defined to traverse at least one of the cells of the circuit design;
executing a processor to selectively determine at least one of the timing paths to be an inter-power domain (IPD) timing path according to predetermined IPD criteria, the IPD criteria including traversal by a timing path through at least one multi-supply element, each multi-supply element including one or more cells energized by multiple power domains; and,
executing a processor to selectively actuate at least one multi-domain timing analysis based on an IPD netlist collectively designating each said IPD timing path,
wherein the circuit design is altered to correct at least one timing violation detected by the multi-domain timing analysis, and
wherein the electronic circuit is manufactured based on the altered circuit design.

US Pat. No. 10,114,918

PHYSICAL PLACEMENT CONTROL FOR AN INTEGRATED CIRCUIT BASED ON STATE BOUNDS FILE

ARM Limited, Cambridge (...

1. A method, comprising:extracting state groups of a circuit design by deriving state groups from each logical hierarchy of the circuit design, wherein at each level, available state points are grouped by similarity and stored in a state groups collection alongside grouping terms;
generating a state bounds file that bounds locations of the state points in the circuit design, wherein the state bounds file is based on the extracted state groups and the grouping terms stored in the state groups collection; and
generating an integrated circuit layout by controlling physical placement of the circuit design using the state bounds file.

US Pat. No. 10,114,917

SYSTEMS AND METHODS FOR MAPPING EXECUTABLE MODELS TO PROGRAMMABLE LOGIC DEVICE RESOURCES

The MathWorks, Inc., Nat...

1. A method comprising:for an executable, behavioral model including model elements, two or more of the model elements configured to exchange signals, data, control, events, or messages, and the executable, behavioral model, when executed, simulating a system,
identifying one or more of the model elements for mapping to one or more DSP slices of a programmable logic device, the one or more DSP slices including a plurality of hardware elements arranged in a structure;
retrieving, from one or more databases, information for mapping the one or more of the model elements to the structure of the one or more DSP slices of the programmable logic device;
automatically modifying, by a processor, an in-memory representation of the executable, behavioral model to map to the structure of the one or more DSP slices of the programmable logic device; and
generating code for the modified in-memory representation of the executable, behavioral model, where the generated code maps, during hardware synthesis, to the one or more DSP slices of the programmable logic device.

US Pat. No. 10,114,914

LAYOUT EFFECT CHARACTERIZATION FOR INTEGRATED CIRCUITS

INTERNATIONAL BUSINESS MA...

1. A system for layout effect characterization of an integrated circuit, the system comprising:a memory having computer readable instructions; and
a processor for executing the computer readable instructions, the computer readable instructions including:
selecting an adjustable clock setting of an input clock for a layout effect characterization circuit of the integrated circuit;
enabling a predetermined duty cycle of the input clock to pass through a plurality of inverting device chains including a reference chain and one or more chains having a different inverting device arrangement and a same number of inverting devices per chain;
measuring a captured output of the one or more chains having the different inverting device arrangement and a captured output of the reference chain, wherein the captured output is captured in at least one register responsive to sampling a low pass filtered output of the inverting device chains by at least one analog-to-digital converter; and
adjusting a clock pulse shape of the adjustable clock based on a detected difference between the captured output of the one or more chains having the different inverting device arrangement and the captured output of the reference chain.

US Pat. No. 10,114,913

METHOD AND SYSTEM FOR DETERMINING WELDING SEQUENCES

Caterpillar Inc., Deerfi...

1. A system for determining a welding sequence including a plurality of welding operations, the system comprising:a welding sequence generator configured to create an initial population of welding sequences based on at least one user-generated constraint; and
a welding simulator configured to simulate welding for each one of the welding sequences in the initial population to model distortion for the welding sequence, wherein
the welding sequence generator is further configured to:
receive the distortion for each one of the welding sequences in the initial population from the welding simulator;
determine whether a merit value derived from at least the distortion for at least one welding sequence satisfies one or more predetermined criteria;
in response to a determination that there is no merit value that satisfies the one or more predetermined criteria, repeat the following steps until a merit value satisfies the one or more predetermined criteria:
choose a subset of candidate welding sequences from a previous population of welding sequences based on the merit values of the welding sequences;
create a subsequent population of welding sequences by performing mutation and crossover operations on the candidate welding sequences while imposing the user-generated constraint;
simulate welding for each one of the welding sequences in the subsequent population of welding sequences to model distortion for the welding sequence; and
determine whether a merit value derived from at least the distortion for at least one welding sequence in the subsequent population of welding sequences satisfies the one or more predetermined criteria; and
output the at least one welding sequence corresponding to the merit value that satisfies the one or more predetermined criteria as a potential welding sequence.

US Pat. No. 10,114,908

HYBRID TABLE IMPLEMENTATION BY USING BUFFER POOL AS PERMANENT IN-MEMORY STORAGE FOR MEMORY-RESIDENT DATA

INTERNATIONAL BUSINESS MA...

1. A data management method, comprising:generating, by a processor of a computing system, a database comprising a database table that is stored in both a first memory comprising an in-memory storage and a second memory comprising a disk memory storage, wherein the database table comprises a plurality of rows, wherein a first portion of the rows is stored in the in-memory storage and a second portion of the rows is stored in the disk memory storage, wherein the subset of the rows of the database table stored in the disk memory device is not stored in the in-memory storage, wherein the database table is indexed by a search index having a plurality of search index reference values each of a first type or second type, the first type being a page pointer to the in-memory storage in a buffer pool, the second type being a page disk address of a page in the disk memory storage that is to be proceed by said buffer pool, and wherein the search index has densely indexed rows that correspond to the subset of the rows of the database stored in the in-memory storage and sparsely indexed rows that correspond to the subset of the rows of the database stored in the disk memory storage;
responsive to a data retrieval request, accessing, by the processor, data from said first or said second memory using a reference value of the plurality of search index reference values, wherein said reference value is of said second type, wherein accessing said data includes determining, by the processor, whether said data is accessible from said buffer pool and then using said reference value of said second type to access said data from said buffer pool if it is determined that said data is accessible from said buffer pool; and
altering said plurality of search index reference values from page pointers to the in-memory storage to page disk addresses in the disk memory in response to data being migrated from the in-memory storage to the disk memory storage based on a least recently used queue of the in-memory storage.

US Pat. No. 10,114,907

QUERY PROCESSING FOR XML DATA USING BIG DATA TECHNOLOGY

INTERNATIONAL BUSINESS MA...

1. A system for offloading extensible markup language (XML) data to a distributed file system, comprising:a memory having computer readable instructions; and
one or more processors for executing the computer readable instructions, the computer readable instructions comprising:
receiving a command to populate a distributed file system with an XML table of a database;
querying the XML table in response to the command;
offloading source data in the XML table to the distributed file system in response to the querying;
receiving an XML path language (XPath) query against the XML table in the database;
processing the X query based on the source data in the distributed file system to generate a result data; and
storing the result data on the distributed file system in response to the XPath query.

US Pat. No. 10,114,905

INDIVIDUAL USER SELECTABLE MULTI-LEVEL AUTHORIZATION METHOD FOR ACCESSING A COMPUTER SYSTEM

EASYWEB INNOVATIONS, INC....

9. A method for (1) providing a plurality of security schemes, each particular security scheme requiring provision of a number of identification information in order to authorize access to a computer system for a particular user from among a plurality of users, and (2) allowing each particular user to select a security scheme to be associated with that particular user, and which selection is independent of the security scheme selected by a remainder of the plurality of users of the computer system, thereby providing each particular user the ability to select their own security scheme to be used to authorize their respective access to the computer system, the method comprising:providing the computer system, the computer system having a plurality of user accounts each with a respective user storage area;
for a first user:
prompting the first user of the computer system for a selection of a first security scheme from among the plurality of security schemes;
storing the selection by the first user as a preference in the first user's storage area;
for a second user:
prompting the second user of the computer system for a selection of a second security scheme from among the plurality of security schemes;
storing the selection by the second user as a preference in the second user's storage area;
wherein the first security scheme requires a specific number of identification information in order to be satisfied and the second security scheme requires a different number of identification information than that of the first security scheme in order to be satisfied,
thereafter authorizing the first or second user to access the computer system when the selected security scheme of the respective user is satisfied.

US Pat. No. 10,114,904

METHOD, SYSTEM, ELECTRONIC DEVICE AND SERVER FOR SYNCHRONOUS DISPLAY OF OPERATING INFORMATION

Wistron Corporation, New...

1. A method for synchronous display of operating information, the method to be implemented by a server communicatively coupled to a first electronic device and to at least one second electronic device, the method comprising:(A) receiving, by the server, a request from the first electronic device for access to a file stored in the server;
(B) transmitting, by the server, the file which is requested by the first electronic device to each of the first electronic device and said at least one second electronic device, wherein contents of the file are displayed on each of the first and second electronic devices in a form of a single web page using a respective web browser launched by each of the first and second electronic devices;
(C0) obtaining, by the first electronic device, operating information comprising a coordinate information, a gesture information and a file name of the file requested by the first electronic device, wherein the coordinate information and the gesture information are associated with an input operation performed upon the single web page of the contents of the file displayed by the web browser of the first electronic device;
(C01) adding, by the first electronic device, the operating information to a queue which is associated with operating information to be transmitted, and determining, by the first electronic device, whether the queue contains previously-added operating information, wherein the queue is stored in the first electronic device;
(C011) in response to the queue containing the previously-added operating information, replacing, by the first electronic device, the previously-added operation information with latest operating information, and transmitting, by the first electronic device, the latest operating information in the queue to the server, wherein the latest operating information is last operating information added to the queue;
(C012) in response to the queue containing no previously-added operating information, transmitting, by the first electronic device, the operating information in the queue to the server;
(C) receiving, by the server, from the first electronic device, the operating information in the queue; and
(D) relaying, by the server, the operating information received from the first electronic device to said at least one second electronic device, the operating information configuring the second electronic device to display an indicator associated with the operating information on the single web page of the contents of the file displayed by the web browser of the second electronic device.

US Pat. No. 10,114,899

REAL-TIME AND ADAPTIVE DATA MINING

1. A method of analyzing data, comprising:generating, by an entity, a query based at least in part on a topic of interest;
executing the query on a plurality of data sources, at least one of the plurality of data sources comprising customer information or financial information;
selecting, by the entity, a data source from the plurality of data sources for monitoring based on a correlation between the data source and the topic of interest, the correlation determined based on results of the executed query;
monitoring, based on a set schedule, the data source for matches to the query to extract data from the data source when at least an update to stored data matches the query, newly added data matches the query, or a combination thereof;
extracting data from the data source when at least an update to stored data matches the query, newly added data matches the query, or a combination thereof;
determining an extraction rate for extracting the data, the extraction rate indicating an amount of the data that is extracted over a first time period;
determining a first processing rate for processing the extracted data with a number of parallel processors, the first processing rate indicating an amount of extracted data that is processed over a second time period;
dynamically adjusting the number of parallel processors for analyzing the extracted data based on the extraction rate to obtain a second processing rate that is greater than the first processing rate;
analyzing, with the parallel processors, the extracted data to determine at least one of a sentiment, an index, a pattern, or a combination thereof;
establishing a two-way communication channel, between at least the entity that selected the data source for monitoring and a user device of a user that provided data to the data source, based on the analysis of the extracted data;
transmitting, from the entity via the two-way communication channel, a first message directed to the user device based on the analysis of the extracted data; and
receiving, from the user device via the two-way communication channel, a second message in response to the first message directed to the user device.

US Pat. No. 10,114,897

SEARCH AND NOTIFICATION PROCEDURES BASED ON USER HISTORY INFORMATION

Open Invention Network LL...

1. A method comprising:identifying a most recent interest from user device submitted data;
searching a database for instances of the most recent interest;
creating a new category based on the most recent interest;
storing the new category in a memory;
combining the new category with weighted query search terms and submitting a combined query, separate weights assigned to query search terms according to validity of information found in each of local and remote memories, information found in local memories contributing to higher weights than information found in remote memories in response to private browsing not enabled on the user device, information found in remote memories contributing to higher weights than information found in local memories in response to private browsing being enabled on the user device;
receiving combined query results; and
creating a modified user interface based on the results of the combined query.

US Pat. No. 10,114,896

FACETED SEARCHING OF RESOURCES VIA A WEB APPLICATION

INTERNATIONAL BUSINESS MA...

1. A computer implemented method for searching resources via a web portal in a user interface framework, the method comprising:initiating a first search request via a search engine interface;
defining a plurality of resource types and at least one user interface control class of a plurality of user interface control classes for each resource type of the plurality of resource types;
associating each of the plurality of resource types to a resource to generate the associated resource types;
receiving a search result and the associated resource types in response to the first search request;
mapping the associated resource types to the at least one user interface control class of the plurality of user interface control classes resulting in at least one selected class group,
wherein the at least one selected class group comprises one or more interactive elements of the web portal to receive command;
dynamically mapping the at least one selected class group to a corresponding instance of user interface controls to provide a one-to-one relationship between the at least one selected class group and the corresponding instance of user interface controls;
defining default input values for each instance of the plurality of user interface control classes based on a corresponding resource type, wherein the defining of the default input values is dynamically adaptable in accordance with a content of the search result that reflect changes and one or more user interface slider controls;
rendering the search result and the corresponding instance into a faceted user interface;
receiving an input via the corresponding instance rendered into the faceted user interface;
filtering the search result based on the input to generate a filtered search result; and
rendering the filtered search result into the faceted search interface.

US Pat. No. 10,114,894

ENHANCING A SEARCH WITH ACTIVITY-RELEVANT INFORMATION

INTERNATIONAL BUSINESS MA...

1. A method for online searching, the method comprising:monitoring for user activity occurring at an application other than a search application, wherein the monitoring occurs because of a permission to monitor by the user, the permission being configured by the user in a user profile associated with the user, wherein the search application is used for online searching;
detecting, responsive to the monitoring, the user activity at the application;
collecting data of the user activity from the application responsive to the detecting;
analyzing, using a processor and a memory, the data of the user activity, the user activity occurring at the application;
identifying, responsive to the analyzing, a topic of interest of the user;
detecting a search term input at the search application;
identifying a subject of the search term;
modifying the search term using a modifier, wherein the modifier is a term related to the topic of interest, and wherein the online searching occurs responsive to the modified search term;
further modifying the search term to use a mandatory term, wherein the mandatory term must appear in a preview of each result in a result set, the result set being responsive to the online searching using the modified search term, wherein the mandatory term is selected by the user from a list of mandatory terms;
receiving a result set responsive to the online searching using the modified search term;
determining whether a preview of a result in the result set includes a portion corresponding to one of (i) the topic of interest, (ii) the modifier, and (iii) a term stored in a modifier repository in association with the modifier;
highlighting the portion; and
highlighting in each result in the result set, the mandatory term, wherein the mandatory term is highlighted differently than the portion.

US Pat. No. 10,114,893

METHOD AND SYSTEM FOR INFORMATION QUERYING

1. A method, comprising:receiving, by a processing system comprising a processor, a query command during a media presentation, wherein the media presentation includes media images and an audio portion;
determining a first text portion associated with the media images based on an analysis of the audio portion of the media presentation temporally associated with a receipt of the query command;
providing a presentation image of the first text portion to be included in the media presentation;
accessing, by the processing system, a media image of the media images associated with the media presentation in accordance with the receiving of the query command;
accessing, by the processing system, a prior image of the media images of the media presentation responsive to the accessing the media image;
receiving, by the processing system, a selection of a portion of the first text portion as a second text portion;
performing, by the processing system, facial recognition on the prior image to receive facial recognition data;
querying, by the processing system, an information source with the second text portion and the facial recognition data, the information source being capable of using the facial recognition data to provide a first result related to the selection of the second text portion;
providing, by the processing system, the first result to be included in the media presentation;
receiving, by the processing system, a selection of a third text from text included in the first result;
querying, by the processing system, the information source based on the selection of the third text to provide a second result; and
providing, by the processing system, the second result to be included in the media presentation.

US Pat. No. 10,114,891

METHOD AND SYSTEM OF AUDIO RETRIEVAL AND SOURCE SEPARATION

Thomson Licensing, (FR)

1. A method comprising:receiving a textual query;
retrieving a preliminary audio sample from an auxiliary audio database by matching the textual query with semantic information associated to the auxiliary audio database;
performing one of
retrieving a target audio sample from a target audio database by matching the preliminary audio sample with the target audio database; and performing an audio-source separation technique on the retrieved target audio sample for separating the retrieved target audio sample into a plurality of audio source signals, wherein retrieving the target audio sample from the target audio database and performing the audio-source separation technique on the retrieved target audio sample are performed jointly, retrieving the target audio sample from the target audio database including comparing the target audio sample with a negative data set; and
separating a target source signal of an audio mixture, said target source signal being described by said textual query, by matching the preliminary audio sample with the audio mixture.

US Pat. No. 10,114,890

GOAL BASED CONVERSATIONAL SERENDIPITY INCLUSION

International Business Ma...

1. A method of operating an electronic meeting assistant injecting information into a deliberation over time comprising:extracting, by an input module of the electronic meeting assistant system, at least one concept from a plurality of statements asserted by at least one participant of a group;
correlating, by a correlation module of the electronic meeting assistant system, the at least one concept to a goal of the deliberation, wherein the goal is consensus of the group;
tagging, by a tagging module of the electronic meeting assistant, at least one of the plurality of statements with an identifier of a participant who asserted the statement;
clustering, by a clustering module of the electronic meeting assistant, a plurality of participants of the group according to a slant on each of the at least one concept;
searching, by a retrieval system of the electronic meeting assistant, using the at least one concept, the statements tagged by the tagging module and a set of the participants clustered according to a certain slant that is not in agreement with the goal, for new information or concepts that negate the certain slant; and
injecting, by an injector module of the electronic meeting assistant, the new information into the deliberation at a rate determined by a degree of negation of the new information or concepts towards the goal, wherein the degree of negation is updated after each injection of the new information and wherein the rate of injection is selected to maintain a rate of convergence to the goal.

US Pat. No. 10,114,888

TERMINAL, SYSTEM, METHOD, AND PROGRAM FOR PRESENTING SENTENCE CANDIDATE

1. A terminal for presenting a sentence candidate, comprising:a report data base that stores a plurality of reports, each including a plurality of sentences;
a sentence selection unit that receives a selection of a sentence from a user;
a report group generation unit that searches the report data base by the selected sentence and generates a report group including a plurality of searched reports as a search result, each of the searched reports including the selected sentence;
a sentence group generation unit that extracts a sentence right after the selected sentence from each searched report included in the report group and generates a sentence group from a plurality of sentences which are extracted from the plurality of searched reports, respectively; and
a sentence output unit that preferentially outputs a predetermined sentence from the sentence group based on a frequency of using the sentence right after the selected sentence,
wherein the sentence output unit outputs not only the predetermined sentence but also a sentence right before and after the predetermined sentence in a report from which the predetermined sentence is extracted, in response to a user's operation.

US Pat. No. 10,114,887

GENERATING A SET OF REPRESENTATIVE ITEMS USING A DYNAMIC SELECTION STRATEGY

Amazon Technologies, Inc....

1. A computing system comprising:a memory configured to store processor-executable instructions; and
a processor in communication with the memory and configured to execute the processor-executable instructions to perform operations comprising:
determining an initial number of reviews of an item included in a set of reviews of the item, wherein the initial number is indicative of the number of reviews initially included in the set of reviews;
selecting, based at least in part on the initial number of reviews, one of a clustering-selection strategy or a maximum-set-coverage selection strategy as a first review selection strategy;
selecting a first subset of the set of reviews using the first review selection strategy;
providing the first subset of reviews to another computing device for presentation via a user interface;
determining that a change in the initial number of reviews has occurred;
determining an updated number of reviews included in the set of reviews based at least in part on determining that a change in the initial number of reviews has occurred;
identifying, based at least in part on the updated number of items, one of the clustering-selection strategy or the maximum-set-coverage selection strategy as a second review selection strategy; and
selecting a second subset of the set of reviews using the second review selection strategy.

US Pat. No. 10,114,886

METHOD FOR INTERACTING WITH A GROUP OF INDIVIDUALS AS A SINGLE CONTACT

1. A method for establishing a group as a single contact for a contact center, the method comprising:identifying, by a processor, an ad associated with a keyword;
outputting, by the processor, the ad in response to receiving the keyword from one or more user devices;
monitoring, by the processor, responses by the one or more user devices to the output ad;
identifying, by the processor, a threshold number of the responses by the one or more user devices;
establishing, by the processor, a group based on identifying the threshold number of the responses, the group including as a group member, each user associated with a responding one or more user devices;
aggregating, by the processor, contact information of each user associated with the responding one or more user devices;
storing, by the processor, the aggregated contact information in association with the group, the group being further associated with the single contact for communicating with the group;
initiating, by the processor, communication with the group; and
in response to the initiating of the communication with the group, establishing, by the processor, a communication channel to the group based on the single contact, wherein communication with the group is via the established communication channel.

US Pat. No. 10,114,885

GENERATING A SET OF REPRESENTATIVE ITEMS USING A CLUSTERING-SELECTION STRATEGY

Amazon Technologies, Inc....

1. A computing system comprising:a memory configured to store processor-executable instructions; and
a processor in communication with the memory and configured to execute the processor-executable instructions to perform operations comprising:
receiving, from another computing device, a value indicative of the number of reviews of an item desired for presentation on the other computing device;
for each review of the item in a set of reviews of the item:
determining a first set of characteristics of the review, and
generating a multi-dimensional data structure representative of the review based at least in part on the first set of characteristics of the review;
identifying, within the set of reviews, a set of clusters, wherein each cluster of the plurality of clusters identifies at least two reviews of the item based at least in part on the multi-dimensional data structure for each review in the set of reviews and based at least in part on the value indicative of the number of reviews desired for presentation on the other computing device;
for each cluster in the set of clusters:
determining, for each review of the cluster, a second set of characteristics of the review that is distinct from the first set of characteristics,
determining, for each review of the cluster, a utility value of the review based at least in part on the second set of characteristics, wherein the utility value indicates a usefulness of the review to an entity assessing the item subject of the review,
selecting, from the cluster, one review having a highest utility value, and
including the one review in a set of selected reviews; and
providing the set of selected reviews to the other computing device for presentation via a user interface,
wherein the set of selected reviews comprises one or more reviews representative of the set of reviews.

US Pat. No. 10,114,883

GENERATING PREFERRED METADATA FOR CONTENT ITEMS

Apple Inc., Cupertino, C...

1. A method for displaying information about a content item comprising:at an electronic device in communication with a display device and one or more input devices:
receiving first metadata associated with the content item from a first source and second metadata associated with the content item from a second source, wherein both the first and second metadata are associated with a first attribute of the content item, the first source is not a provider of the content item and the second source is a provider of the content item;
receiving, via the one or more input devices, a request to display a user interface associated with the content item; and
in response to receiving the request to display the user interface associated with the content item:
displaying, on the display device, the user interface including information associated with a second attribute of the content item, different than the first attribute of the content item, and information associated with the first attribute of the content item, wherein the information associated with the first attribute of the content item includes:
in accordance with a determination that the second attribute of the content item is a first respective attribute, the first metadata associated with the first attribute of the content item and not the second metadata associated with the first attribute of the content item; and
in accordance with a determination that the second attribute of the content item is a second respective attribute, the second metadata associated with the first attribute of the content item and not the first metadata associated with the first attribute of the content item;
wherein the user interface includes information associated with a third attribute of the content item, and the information associated with the third attribute of the content item includes portions of third metadata associated with the third attribute of the content item and portions of fourth metadata associated with the third attribute of the content item.

US Pat. No. 10,114,882

CONTENT DELIVERY NETWORK ANALYTICS MANAGEMENT VIA EDGE STAGE COLLECTORS

Level 3 Communications, L...

1. An analytics system comprising:at least one edge server disposed in an edge site of a content delivery network (CDN);
at least one collector module stored in memory and executable by a processor to collect analytics associated with requests for content in the CDN, the at least one collector module disposed in the edge site including the at least one edge server,
wherein the at least one edge server extracts data from the requests for content in the CDN to determine Autonomous System Numbers (ASNs) associated with one or more networks from which the requests originate;
wherein the at least one collector module is executable by the processor to:
apply a collection policy to the requests for content in the CDN;
provide metrics for monitoring and alerting the analytics system; and
provide scalability for adding and subtracting collector modules in response to fluctuations in the amount of collected analytics;
a first portal that enables management of reports associated with the collected analytics; and
a second portal that enables management of reporting configurations as implemented by the at least one collector module, wherein the first portal is configured to receive and reply to queries from the second portal.

US Pat. No. 10,114,881

FAST SERIALIZATION FOR DATA TRANSFER

SAP SE, Walldorf (DE)

1. A computer-implemented method for improving data transferring efficiency from a first database to a second database, comprising:analyzing a column of data stored in the first database to determine at least one serialization parameter, the at least one serialization parameter comprises a repetition counter or a replication counter;
determining a data serialization scheme associated with the data based on the at least one serialization parameter, wherein the data serialization scheme comprises at least a repetition scheme or a replication scheme, wherein the repetition scheme comprises:
writing the repetition counter to a transfer medium;
serializing at least one value in a value set to the transfer medium;
determining an index that corresponds to a data value; and
writing the index to the transfer medium;
determining a variable serialization scheme associated with the data based on a variable type of the data;
repeating the analyzing, the determining of the data serialization scheme, and the determining of the variable serialization scheme for each column of the data stored in the first database;
serializing the data stored in the first database using the data serialization scheme and the variable serialization scheme; and
transferring the serialized data to the second database.

US Pat. No. 10,114,877

METHOD AND APPARATUS FOR ACCESSING A DATA SOURCE FROM A CLIENT USING A DRIVER

Open Invention Network LL...

1. A method, comprising:providing, at a client side, a data source name (DSN) to connect to a data source using a database driver, the DSN comprising at least one of a Component Object Model based library or a Component Object Model based application of the data source that implements a driver interface to access the data source;
providing a connection string including a driver name for the database driver and an identifier for the implementation of the driver interface; and
using the database driver, at the client side, to interface between the client and an implementation, at the data source side, of a driver interface to access the data source based on the DSN, using the database driver comprising:
establishing a connection between the client and the implementation via the database driver using the DSN, wherein the implementation includes an identifier that identifies class, and identifies applications or libraries that implement the driver interface; and
establishing a second connection between a driver manager that manages at the client side and the implementation via the database driver using the DSN.

US Pat. No. 10,114,876

DATA AUGMENTATION BETWEEN DEVICES USING VISUAL CODE

SAP SE, Walldorf (DE)

1. A method comprising:determining, by a computing device, a data set stored in one or more database tables in a database system;
receiving, by the computing device, a visualization that was created using data from the data set that is stored in the one or more database tables;
storing, by the computing device, the visualization in the one or more database tables;
generating, by the computing device, a visual code for the visualization, the visual code including a link to the stored visualization;
after creating the visualization, outputting, by the computing device, the visual code with at least a portion of the data from the data set, wherein the data from the at least the portion of the data set that is output is output in a grid format that is different from the stored visualization;
receiving, by the computing device, a request via the link from a mobile device, the request generated in response to the mobile device capturing the visual code;
using, by the computing device, the link to retrieve the visualization from the one or more database tables, wherein the visualization is stored with a key in the database table with the data set, the key allowing the visualization to be retrieved; and
outputting, by the computing device, the stored visualization to the mobile device in response to receiving the request, the stored visualization summarizing the at least the portion of the data set that is output in the grid format.

US Pat. No. 10,114,875

DASHBOARD CONTROLS TO MANIPULATE VISUAL DATA

MICROSOFT TECHNOLOGY LICE...

1. A method comprising:under control of one or more processors configured with executable instructions:
presenting a dashboard display including multiple objects on a display of a computing device;
modeling data stored in a database or a spreadsheet by the multiple objects using one or more graphical controls in the dashboard, the modeling comprising dynamically adjusting the data stored in the database or the spreadsheet responsive to graphical manipulation of the multiple objects using the one or more graphical controls, the graphical manipulation comprising receiving a selection of an object of the multiple objects without typing of data for the object; and
in response to receiving the selection of the object, providing visual indications of which one or more other objects of the multiple objects would be affected in response to a change in the selected object, wherein the visual indications include a change in size and a change in color of the one or more other objects of the multiple objects that would be affected in response to the change in the selected object.

US Pat. No. 10,114,874

SOURCE QUERY CACHING AS FAULT PREVENTION FOR FEDERATED QUERIES

Red Hat, Inc., Raleigh, ...

1. A method of processing a federated query, comprising:receiving an indication that a first set of source queries embedded in a first federated query failed to execute successfully, each source query specifying a set of source tables stored in a target autonomous data source of a plurality of target autonomous data sources belonging to a federation, at least two source queries of the first set of source queries being specific to different data sources, and the first federated query being sent from a client;
storing the first set of source queries and metadata associated with the first set of source queries into a data structure, the first set of source queries including a first source query;
for each source query of the first set of source queries that is determined to be stored in the data structure, updating metadata of each entry corresponding to the respective source query stored in the data structure, the metadata including a number of times the respective source query has failed and further including a timestamp of the respective failure;
selecting a second set of source queries from the data structure, the second set of source queries including the first source query and having a higher probability of failure than a third set of source queries stored in the data structure;
submitting the second set of source queries to one or more target data sources;
for each result of a source query of the second set of source queries, storing the result in a cache external to the federation;
receiving an indication that the first source query embedded in a second federated query failed to execute successfully, the second federated query including a second source query, and the first source query specifying a first set of source tables stored in a first target autonomous data source;
generating a third source query by replacing a first set of source table names included in the first source query with a second set of source table names that identifies a second set of source tables, the second set of source tables being stored in the cache and storing data cached from the first set of source tables, and the first set of source table names being different from the second set of source table names;
generating a third federated query including the second and third source queries;
submitting each source query embedded in the third federated query to one or more data sources, the third source query specifying the second set of source tables and being submitted to the cache; and
sending a combined result set responsive to the third federated query to the client, the combined result set including a first result set responsive to the second source query and further including a cached result set responsive to the third source query, and the cached result set being stored in the cache.

US Pat. No. 10,114,872

REAL-TIME AND ADAPTIVE DATA MINING

1. A method of analyzing data, comprising:generating, by an entity, a query based at least in part on a topic of interest;
executing the query on a plurality of data sources, at least one of the plurality of data sources comprising at least one of knowledge center information, frequently asked questions (FAQs), user comments, customer service data, or a combination thereof;
selecting, by the entity, a data source from the plurality of data sources for monitoring based on a correlation between the data source and the topic of interest, the correlation determined based on results of the executed query;
monitoring, based on a set schedule, the data source for matches to the query to extract data from the data source when at least an update to stored data matches the query, newly added data matches the query, or a combination thereof;
extracting data from the data source when at least an update to stored data matches the query, newly added data matches the query, or a combination thereof;
determining an extraction rate for extracting the data, the extraction rate indicating an amount of the data that is extracted over a first time period;
determining a first processing rate for processing the extracted data with a number of parallel processors, the first processing rate indicating an amount of extracted data that is processed over a second time period;
dynamically adjusting the number of parallel processors for analyzing the extracted data based on the extraction rate to obtain a second processing rate that is greater than the first processing rate;
analyzing, with the parallel processors, the extracted data to determine at least one of a sentiment, an index, a pattern, or a combination thereof;
establishing a two-way communication channel, between at least the entity that selected the data source for monitoring and a user device of a user that provided data to the data source, based on the analysis of the extracted data;
transmitting, from the entity via the two-way communication channel, a first message directed to the user device based on the analysis of the extracted data; and
receiving, from the user device via the two-way communication channel, a second message in response to the first message directed to the user device.

US Pat. No. 10,114,871

REAL-TIME AND ADAPTIVE DATA MINING

1. A method of analyzing data, comprising:generating, by an entity, a query based at least in part on a topic of interest;
executing the query on a plurality of data sources, at least one of the plurality of data sources comprising legal data for summarization;
selecting, by the entity, a data source from the plurality of data sources for monitoring based on a correlation between the data source and the topic of interest, the correlation determined based on results of the executed query;
monitoring, based on a set schedule, the data source for matches to the query to extract data from the data source when at least an update to stored data matches the query, newly added data matches the query, or a combination thereof;
extracting data from the data source when at least the update to the stored data matches the query, the newly added data matches the query, or the combination thereof;
determining an extraction rate for extracting the data, the extraction rate indicating an amount of the data that is extracted over a first time period;
determining a first processing rate for processing the extracted data with a number of parallel processors, the first processing rate indicating an amount of extracted data that is processed over a second time period;
dynamically adjusting the number of parallel processors for analyzing the extracted data based on the extraction rate to obtain a second processing rate that is greater than the first processing rate;
analyzing, with the parallel processors, the extracted data to determine at least one of a sentiment, an index, a pattern, or a combination thereof;
establishing a two-way communication channel, between at least the entity that selected the data source for monitoring and a user device of a user that provided the data to the data source, based on the analysis of the extracted data;
transmitting, from the entity via the two-way communication channel, a first message directed to the user device based on the analysis of the extracted data; and
receiving, from the user device via the two-way communication channel, a second message in response to the first message directed to the user device.

US Pat. No. 10,114,870

REAL-TIME AND ADAPTIVE DATA MINING

1. A method of analyzing data, comprising:generating, by an entity, a query based at least in part on a topic of interest;
executing the query on a plurality of data sources, at least one of the plurality of data sources comprising at least one of bullying information, harassment information, or a combination thereof;
selecting, by the entity, a data source from the plurality of data sources for monitoring based on a correlation between the data source and the topic of interest, the correlation determined based on results of the executed query;
monitoring, based on a set schedule, the data source for matches to the query to extract data from the data source when at least an update to stored data matches the query, newly added data matches the query, or a combination thereof;
extracting data from the data source when at least the update to the stored data matches the query, the newly added data matches the query, or the combination thereof;
determining an extraction rate for extracting the data, the extraction rate indicating an amount of the data that is extracted over a first time period;
determining a first processing rate for processing the extracted data with a number of parallel processors, the first processing rate indicating an amount of extracted data that is processed over a second time period;
dynamically adjusting the number of parallel processors for analyzing the extracted data based on the extraction rate to obtain a second processing rate that is greater than the first processing rate;
analyzing, with the parallel processors, the extracted data to determine at least one of a sentiment, an index, a pattern, or a combination thereof;
establishing a two-way communication channel, between at least the entity that selected the data source for monitoring and a user device of a user that provided the data to the data source, based on the analysis of the extracted data;
transmitting, from the entity via the two-way communication channel, a first message directed to the user device based on the analysis of the extracted data; and
receiving, from the user device via the two-way communication channel, a second message in response to the first message directed to the user device.

US Pat. No. 10,114,866

MEMORY-CONSTRAINED AGGREGATION USING INTRA-OPERATOR PIPELINING

SAP SE, Walldorf (DE)

1. A computer implemented method for aggregating tuples, comprising:separating, by at least one processor, the tuples into a plurality of partitions using a hash function;
first processing, by the at least one processor, a portion of the tuples associated with a partition in the plurality of partitions based on the separating;
reserving, by the at least one processor, a first block for the partition from a free list based on a minimum number of blocks in the free list to perform a second processing and a third inserting;
first inserting, by the at least one processor, the processed portion of the tuples into the first block;
second inserting, by the at least one processor the first block into a buffer associated with the partition;
performing the second processing, by the at least one processor, the first block in the buffer; and
performing the third inserting, by the at least one processor, the processed first block into the free list,
wherein at least one of the separating, first processing, first inserting, second inserting, second processing, and third inserting is performed by one or more computers.

US Pat. No. 10,114,863

SUGGESTION OF A BROAD-SPECTRUM LIST OF GROUPED NATURAL LANGUAGE SEARCH QUERY TERMS

International Business Ma...

1. A method for suggesting a search query based on terms, the method comprising:receiving, via a processor, a search query having at least a first term;
identifying a plurality of related terms having a relationship to the first term, based on prior search queries;
determining to ignore a first related term of the plurality of related terms, based on the first related term having not been observed with the first term over a specified time interval; and
generating a plurality of predictive suggestions for completing the search query, wherein none of the plurality of predictive suggestions includes the ignored first related term, wherein a first of the plurality of predictive suggestions includes at least the first term, and wherein a second of the plurality of predictive suggestions includes an identified semantic equivalent of the first term and a second related term of the plurality of related terms, wherein the identified semantic equivalent is synonymous with the first term.

US Pat. No. 10,114,862

SUGGESTION OF A BROAD-SPECTRUM LIST OF GROUPED NATURAL LANGUAGE SEARCH QUERY TERMS

International Business Ma...

8. A computer program product, comprising:a non-transitory computer-readable storage medium having computer-readable program code embodied therewith, the computer-readable program code configured to perform an operation for suggesting a search query based on terms, the operation comprising:
receiving, via a processor, a search query having at least a first term;
identifying a plurality of related terms having a relationship to the first term, based on prior search queries;
determining to ignore a first related term of the plurality of related terms, based on the first related term having not been observed with the first term over a specified time interval; and
generating a plurality of predictive suggestions for completing the search query, wherein none of the plurality of predictive suggestions includes the ignored first related term, wherein a first of the plurality of predictive suggestions includes at least the first term, and wherein a second of the plurality of predictive suggestions includes an identified semantic equivalent of the first term and a second related term of the plurality of related terms, wherein the identified semantic equivalent is synonymous with the first term.

US Pat. No. 10,114,860

COMPUTERIZED CASE MANAGEMENT SYSTEM WITH AUTO-GENERATED MEMORABLE CASE IDENTIFIERS

EMC IP Holding Company LL...

1. A method of operating a case management system having a case database storing case records in association with respective internal case identifiers, comprising:automatically generating memorable case identifiers and providing them to users of the case management system for use in identifying respective case records, the memorable case identifiers being generated by encoding the internal case identifiers along with respective user identifiers as respective sequences of words of a natural language of the users according to an encoding function, the sequences of words forming the memorable case identifiers; and
retrieving case records from the case database and providing the case records to the users based on memorable case identifiers received from the users, the case records being retrieved by decoding received memorable case identifiers into respective internal case identifiers and accessing the case database using the respective internal case identifiers from the decoding; and
receiving and using feedback information to modify future operation based on past operation, the feedback information including memorability information indicating a level of memorability of memorable case identifiers that have been automatically generated, the memorability information used to alter the encoding operation to prefer words having characteristics correlated with higher memorability as identified by the memorability information.

US Pat. No. 10,114,859

EXTENSIONS OF STRUCTURED QUERY LANGUAGE FOR DATABASE-NATIVE SUPPORT OF GRAPH DATA

SAP SE, Walldorf (DE)

1. A computer program product comprising a non-transient machine-readable medium storing instructions that, when executed by at least one programmable processor, cause the at least one programmable processor to perform operations comprising:receiving an input, the input being in a native language configured to manipulate data in a database;
generating, based at least on the input, a graph workspace object in a database layer comprising the database, the graph workspace object providing a database view of a graph by at least referencing a vertex table and an edge table identified by the input, the vertex table and/or the edge table comprising one or more tables in a physical table pool of the database, the vertex table including a vertex key column defining a plurality of vertices comprising the graph, the edge table including an edge key column, a source column, and a target column defining one or more edges comprising the graph, the one or more edges corresponding to relationships between the plurality of vertices;
and
generating, based at least on the graph workspace object, a graph workspace in a higher level programming layer of the database, the graph workspace providing a database view of the graph.

US Pat. No. 10,114,856

METHOD FOR BACKFILLING GRAPH STRUCTURE AND ARTICLES COMPRISING THE SAME

INTERNATIONAL BUSINESS MA...

1. A system for updating a graph-based data structure comprising a plurality of nodes and one or more edges connecting the plurality of nodes, the system comprising:at least one memory storing computer-executable instructions; and
at least one processor operatively coupled to the at least one memory, wherein the at least one processor is configured to access the at least one memory and execute the computer-executable instructions to:
receive queries submitted by a plurality of users, wherein the queries are formulated based at least in part on at least one of a pivot operation or a filtering operation performed by the one or more users;
determine a pattern of access of the graph-based data structure associated with one or more users based at least in part on the queries submitted by the one or more users;
generate an updated graph-based structure by modifying one or more attributes of the graph-based data structure based at least in part on the pattern of access;
present, via a user interface, a first query to the plurality of users;
receive a plurality of responses to the first query from the plurality of users;
identify one or more neighboring nodes of a particular node in the updated graph-based data structure, wherein the one or more neighboring nodes satisfy the first query;
present, via the user interface, an indication of the one or more neighboring nodes to at least one user of the plurality of users;
determine that each of the plurality of responses comprises a selected option;
determine that a number of the plurality of responses is greater than or equal to a threshold value;
generate a second query based at least in part on the first query; and
present the second query to the at least one user of the plurality of users.

US Pat. No. 10,114,855

METHOD AND SYSTEM FOR BUILDING AND DISTRIBUTING APPLICATION PROFILES VIA THE INTERNET

CODE SYSTEMS CORPORATION,...

1. A computer-implemented method performed by a server computing device coupled to a network connected to a plurality of client computing devices, the method comprising:receiving an application file and an instruction from a first client computing device of the plurality of client computing devices over the network, the instruction instructing the server computing device to instruct a directing process executing on each one of the plurality of client computing devices that downloads the application file from the server computing device to record at least one transcript profiling usage of the application file;
receiving a request from the directing process executing on a second client computing device of the plurality of client computing devices to download the application file to the second client computing device over the network, the directing process executing on the second client computing device being a particular directing process, the particular directing process being configured to profile usage of the application file when the application file is executed on the second client computing device and to upload one or more transcripts to the server computing device, the one or more transcripts having been created by the particular directing process when the particular directing process profiled usage of the application file on the second client computing device, each of the one or more transcripts storing at least one order in which portions of the application file were accessed when the application file was executed on the second client computing device;
in response to the request, downloading the application file to the second client computing device over the network and instructing the particular directing process to profile usage of the application file on the second client computing device;
receiving one or more transcripts uploaded to the server computing device by the particular directing process executing on the second client computing device over the network; and
sending a model build request to a model build computing device, in response to the model build request, the model build computing device:
(a) creating a streaming model based on the at least one order stored in each of the one or more transcripts;
(b) storing the streaming model in a data structure; and
(c) dividing the application file into a plurality of files each smaller than the application file based on the streaming model stored in the data structure, the plurality of files comprising one or more initial execution files to be downloaded first and one or more other files to be downloaded after the one or more initial execution files have been downloaded.

US Pat. No. 10,114,854

VALIDATION RULE MANAGEMENT ACROSS ENTITIES

International Business Ma...

1. A method of automatically managing a validation rule across a shared replicated database, the method comprising:utilizing at least one processor to execute computer code that performs the steps of:
receiving, at a ledger of at a database comprising a shared financial ledger, a first transaction associated with a user, wherein the database comprises a plurality of ledgers, each ledger being associated with a node of a network comprising a plurality of nodes and wherein each of the plurality of nodes is associated with a different entity;
the database being shared and replicated among the plurality of nodes;
receiving, at substantially the same time as the first transaction and at the ledger, a validation rule for preventing a financial attack and associated with the first transaction, wherein the validation rule comprises at least one condition associated with the user with respect to the first transaction and wherein the validation rule is generated by the entity associated with the ledger; and
automatically replicating, response to receipt of the first transaction and the validation rule at the ledger, the validation rule throughout the plurality of ledgers.

US Pat. No. 10,114,853

OPTIMIZING THE INITIALIZATION OF A QUEUE VIA A BATCH OPERATION

INTERNATIONAL BUSINESS MA...

1. A method for performing a patch processing, comprising:initializing, by a processor coupled to a memory, a set of elements corresponding to a first set of resources to produce an initialized group,
wherein the initializing of the set of elements is performed without a system lock on at least the first set of resources;
setting an indicator signifying that the set of elements are not available prior to the system lock on at least the first set of resources while the set of elements is being initialized,
wherein the indicator is checked by a second processor attempting to access the set of elements to verify whether the set of elements are available for use;
chaining, by the processor, the initialized group to previously initialized elements to produce an element batch when the previously initialized elements are available,
wherein the chaining of the initialized group is performed without the system lock on at least the first set of resources, and
wherein the previously initialized elements correspond to a second set of resources;
obtaining, by the processor, a system lock on at least the first and second sets of resources in accordance with the element batch after the initialized group is chained to the previously initialized elements;
executing, by the processor, a service routine to move the element batch to a queue, wherein the service routine increases an efficiency of the batch processing by referencing only first and last elements of the element batch and not middle elements of the element batch; and
updating counts representing a number of elements on the queue to correspond to the service routine; and
releasing the system lock on at least the first and second sets of resources once the service routine is complete and resetting the indicator to signal that the set of elements is fully initialized once all elements in the element batch have been processed,
wherein each element of the set of elements is an address pointing to a corresponding resource of the first set of resources,
wherein all elements on the queue are chained via a forward and backward pointer.

US Pat. No. 10,114,851

SYSTEMS AND METHODS FOR VERIFIABLE, PRIVATE, AND SECURE OMIC ANALYSIS

1. An omic compatibility matching system implemented on a host computing device communicating with a first user computing device storing a first set of omic data associated with a first user, and with a second user computing device storing a second set of omic data associated with a second user, the computing devices communicating via a digital communications network to execute an omic matching transaction with authenticated data provenance, the computing devices each having one or more processors and memory storing instructions which, when executed by the processors, cause the computing devices to perform a method comprising:generating, by the host computing device, a calculation descriptor for testing the compatibility of the first set of omic data and the second set of omic data;
generating, by the host computing device, verification data for the first set of omic data;
generating a verification calculation descriptor for the first set of omic data, for verifying through a secure computation that the inputs provided to the calculation descriptor are the same as the inputs previously presented to the host device and associated with the first user;
transmitting the verification calculation descriptor to the first user computing device;
transmitting the calculation descriptor to the second user computing device;
calculating, by the host computing device and the first user computing device, a verification output using the verification calculation descriptor and the first set of omic data, the verification output indicating whether the first set of omic data is the same as omic data previously presented to the host device by the first user;
transmitting, by the first user computing device to the host computing device and the second user computing device, an input to the calculation descriptor;
reporting to the host computing device, by the second user computing device, the input to the calculation descriptor received from the first user computing device; and
determining, by the host computing device, that the input to the calculation descriptor provided to the host computing device by the first user computing device is the same as the input reported by the second user computing device and that the verification calculation descriptor has verified that the inputs provided to the calculation descriptor are the same as the inputs previously presented to the host device and associated with the first user, and only then, substantially simultaneously directing, by the host computing device, the calculation of a compatibility score by the first user computing device and the second user computing device using a secure function evaluation based on the calculation descriptor, the first set of omic data, and the second set of omic data.

US Pat. No. 10,114,850

DATA STREAM GENERATION USING PRIME NUMBERS

EMC IP Holding Company LL...

1. A system, comprising:a processor configured to:
receive an initialization parameter, wherein the initialization parameter is a value selected from a constrained address space, wherein the constrained address space limits the value of numbers in a sequence;
generate a data stream using the initialization parameter, wherein to generate the data stream, the processor is further configured to merge a first sequence and a second sequence, wherein to merge the first sequence and the second sequence into the data stream includes to alternate between a number of the first sequence and a number of the second sequence, wherein the first sequence is generated using a first prime number and the initialization parameter and the second sequence is generated using a second prime number and the initialization parameter, wherein a first number of a sequence is based on the initialization parameter and a subsequent number of the sequence is based on a previous number of the sequence and a corresponding sequence prime number;
send the data stream to be stored at a storage device;
receive restored data associated with the data stream from the storage device;
determine the first prime number and the second prime number based on the restored data at least in part by:
a first determination of a first offset between odd ordinal numbers of the data stream and a second offset between even ordinal numbers of the data stream;
a second determination of whether the first offset is equal to the first prime number and the second offset is equal to the second prime number; and
in response to determining the first offset is equal to the first prime number and the second offset is equal to the second prime number, verify the data stream without a copy of the data stream and without the initialization parameter, the prime number and the second prime number; and
a memory coupled to the processor and configured to store the initialization parameter.

US Pat. No. 10,114,848

ENSURING THE SAME COMPLETION STATUS FOR TRANSACTIONS AFTER RECOVERY IN A SYNCHRONOUS REPLICATION ENVIRONMENT

SYBASE, INC., Dublin, CA...

1. A computerized method for replicating databases, the method comprising:detecting that a relational database management system (RDMS) is in service;
determining using one or more processors of a replication database system, a last committed transaction for a first data store and a last committed transaction for a second data store;
determining, using one or more processors of the replication database system, that a transaction log on the RDMS includes a first transaction that had not yet been replicated at the first data store prior to the RDMS being in service and a second transaction from the second data store is unconfirmed at the RDMS; and
based on determining that the transaction log includes the first transaction and that the second transaction is unconfirmed, resynchronizing the transaction log of the RDMS with the first data store and the second data store.

US Pat. No. 10,114,847

CHANGE CAPTURE PRIOR TO SHUTDOWN FOR LATER BACKUP

CA, Inc., New York, NY (...

1. A computer implemented method comprising:monitoring, using an application, blocks of data on a storage device that are changing as a computer operates;
creating a plurality of incremental backups, wherein each incremental backup includes only blocks of data of the monitored blocks of data that have changed since a previous incremental backup;
merging, using the application, two oldest incremental backups of the plurality of incremental backups in response to a number of incremental backups exceeding a specified number;
detecting that the computer is being shut down;
in response to detecting that the computer is being shut down, saving a copy of a shutdown incremental backup to the storage device before the computer is shut down, wherein the shutdown incremental backup includes blocks of data of the monitored blocks of data that have changed since the most recent incremental backup of the plurality of incremental backups; and
upon startup of the computer, transmitting, using the application, the blocks of data included in the shutdown incremental backup to a backup storage device.

US Pat. No. 10,114,846

BALANCED DISTRIBUTION OF SORT ORDER VALUES FOR A MULTI-COLUMN SORT ORDER OF A RELATIONAL DATABASE

Amazon Technologies, Inc....

1. A system, comprising:one or more storage nodes, respectively comprising at least one processor and a memory, that implement a data store;
the data store, configured to:
identify a plurality of columns in a database table for a multi-column sort order of the database table;
evaluate data values in the plurality of columns to determine buckets for respective depth-balanced histograms for individual ones of the columns, wherein the buckets of the respective histograms represent ranges of the data values in the columns, wherein the buckets are assigned respective bucket values;
identify those buckets representing ranges of the data values in the respective histograms for the columns that include the data values of the plurality of columns in the entries;
generate multi-column sort order values for the entries of the database table according to interleaved bits of the assigned bucket values for each of the identified buckets for the entries; and
store the entries of the database table according to a sorted order of the multi-column sort order values for the entries.

US Pat. No. 10,114,845

EFFICIENTLY ESTIMATING COMPRESSION RATIO IN A DEDUPLICATING FILE SYSTEM

EMC IP Holding Company LL...

1. A deduplicating storage system, comprising:a processor configured to:
for each of k times: associate a bin of an ordered set of bins with each received identifier, wherein each bin in the ordered set of bins has a bin number and each received identifier comprises a fingerprint of a segment of a set of segments stored on a file system of the deduplicating storage system;
determine a minimum bin number associated with each received identifier, the minimum bin number being the bin number that is minimum among the bins associated with the each received identifier;
repeat the k times of associating a bin with a received identifier for n trials, where n is greater than two;
determine an estimate of a quantity of unique identifiers based at least in part on an average of the minimum associated bin number;
determine a data compression ratio of the segments stored in the file system of the deduplicating storage system based on the estimated quantity of the unique identifiers without having to record a list of the unique identifiers and check the list of the unique identifiers for the each received identifier;
determine a capacity of the deduplicating storage system; and
back up data to the system of the deduplicating storage system based on the determined capacity of the deduplicating storage system and the determined data compression ratio of the segments stored therein; and
a memory coupled to the processor and configured to provide the processor with instructions.

US Pat. No. 10,114,844

READINESS CHECKER FOR CONTENT OBJECT MOVEMENT

International Business Ma...

1. A method, comprising:determining, outside a movement time window, whether each content object in a set of content objects is ready for movement by checking whether each content object is on hold, wherein any content object that is on hold is not to be any of migrated, deleted, and archived;
for each content object in the set of content objects that is not on hold, setting, outside the movement time window, an associated indicator to indicate that the content object is ready for movement;
for each content object in the set of content objects that is on hold, resetting, outside the movement time window, the associated indicator to indicate that the content object is not ready for movement; and
moving, within the movement time window, each content object in the set of content objects that has the associated indicator set to indicate that the content object is ready for movement, wherein the movement time window is set to a period of time that allows completing movement of each content object in the set of content objects that has the associated indicator set.

US Pat. No. 10,114,843

CONTENT MIGRATION FRAMEWORK

SAP SE, Walldorf (DE)

1. A computer-implemented method for supporting migration of unstructured data stored in enterprise content management systems, comprising:generating a search for the unstructured data matching at least one content search rule, the unstructured data comprising information that does not have a predefined data model, the at least one content search rule comprising an enterprise identifier and a document identifier and the at least one content search rule being retrieved from a migration engine server configured to provide support for migration of the unstructured data and structured data stored in an enterprise resource planning system;
receiving a list of matched documents, wherein each document in the list of matched documents comprises at least a portion of the unstructured data and is associated with at least a source repository identifier and a unique document identifier;
calculating a target repository identifier and at least one metadata change instruction for each unique document identifier using at least one migration rule defining how the unstructured data is to be migrated to maintain an integrity of the unstructured data, the at least one migration rule being compliant with international regulations; and
modifying metadata for the document associated with the document identifier using the calculated at least one metadata change instruction to generate a modified copy of the document, the at least one metadata change instruction specifying that any matched content with a particular source repository identifier is to be modified to reflect a particular target repository identifier, the particular target repository identifier comprising at least one of a prefix and a suffix different from the particular source repository identifier and the at least one metadata change instruction specifying deletion of the metadata matching the particular source repository identifier from a source repository associated with the particular source repository identifier upon migration to a target repository associated with the particular target repository identifier.

US Pat. No. 10,114,842

MEDIA COMPRESSION IN A DIGITAL DEVICE

Red Hat, Inc., Raleigh, ...

1. A method, comprising:monitoring available data storage space in a digital device;
in response to the available data storage space falling below a threshold, generating, by a processing device of the digital device, a user interface to prompt a user of the digital device to allow compression of content stored on the digital device;
receiving, by the processing device via the user interface, an indication from the user to allow the compression of the content; and
in response to receipt of the indication from the user:
determining one or more types of the content that are indicated as allowed for compression; and
performing, by the processing device, the compression on the determined one or more types of the content.

US Pat. No. 10,114,841

SYSTEM FOR GENERATING A TABLE

1. A system for generating a table, comprising:a computer, wherein the computer includes:
a table generator for generating a table which contains:
at least a column or line depicting a plurality of first categories and at least a column or line depicting first values associated with said plurality of first categories;
a sparkline generator for generating a sparkline, wherein each one of the depicted plurality of first categories is provided with a sparkline within a confine of the table and each respective first category, the sparkline showing a number of second categories into which the respective first category is sub-divided and the relation of values associated with said second categories, the second categories being positioned within the table and directly adjacent to the respective first category, and the sparkline provides information related to data of the second categories;
a category selector for selecting one of said first categories by a user; and
an adder for enlarging the table upon selection of a category by said category selector, said adder being adapted to enlarge the table by adding a new column or line which comprises second categories into which said selected first category is subdivided and second values associated with said second categories,
wherein the computer is configured to allow display in the new column or line only the second categories associated with the selected first category, to update the column or line depicting first values with the second values associated with the second categories, disallow display in the new column or line of any second categories associated with non-selected first categories, and continue to display the column or line depicting first values associated with the non-selected first categories,
wherein the first category is subdivided into different types of second categories and wherein the adder is adapted to automatically choose the type of second categories based upon a criterion,
wherein said criterion is the spread of values associated with the second categories, and
wherein the adder is adapted to add types of categories in an order so that categories having a higher spread of values are chosen prior to those categories having a lower spread of values.

US Pat. No. 10,114,840

CUSTOMER DATA SEPARATION IN A SERVICE PROVIDER SCENARIO

SAP SE, Walldorf (DE)

1. A computer-implemented method for controlling customer access to documents, the method comprising:storing, by a computing system, a group of documents for a plurality of customers, wherein:
(i) each of the documents in the group is either a parent document or a node document,
(ii) the documents in the group include multiple parent documents and multiple node documents,
(iii) each of the node documents is directly linked to one or more of the parent documents or are indirectly linked to one or more of the parent documents through other of the node documents, and
(iv) the plurality of customers are associated with a plurality of customer records such that each of the customers is associated with a customer record from the plurality of customer records;
authorizing, by the computing system, each customer in the plurality of customers to access only a respective subset of the documents from the group of documents by assigning each document in the group of documents to a respective customer record from the plurality of customer records, wherein:
(i) the assigning of each document to the respective customer record involves including, for each of the parent documents, a reference to a customer attribute that identifies the respective customer record, the customer attribute being included in a plurality of customer attributes, and
(ii) only the parent documents in the group of documents are assigned to the customer records such that the node documents do not include references to customer attributes;
receiving, by the computing system, a request to access documents for a particular customer, and in response:
(i) authorizing the particular customer to access each parent document that includes a particular customer attribute that identifies the respective customer record associated with the particular customer, wherein the computing system authorizes the access to the parent document by referencing the particular customer attribute;
(ii) authorizing the particular customer to access each node document that is linked to each of the parent objects that include the customer attribute, wherein the computing system authorizes the access to the node document by referencing the parent document that include the particular customer attribute without first accessing the node document; and
managing, by the computing system, the group of documents for the plurality of customer records, wherein the group of documents and the plurality of customer attributes are stored in a database.

US Pat. No. 10,114,839

FORMAT IDENTIFICATION FOR FRAGMENTED IMAGE DATA

EMC IP Holding Company LL...

1. A system for storing information, comprising:an interface that receives an input stream of information, wherein the input stream of information comprises a plurality of fragments;
a data model generator that is configured to determine fragment boundaries of the plurality of fragments and to determine a data format for each of the plurality of fragments based on continuity properties;
wherein the data model generator operates to
divide the input stream of information into a plurality of windows, wherein each window has a fixed size and includes a same number of bytes, and wherein each of the plurality of fragments contains no more than a single window;
for each of the plurality of windows:
determine whether the window has a known or unknown format based on a value of a scoring function, wherein a high value of the scoring function indicates the window has a known format whereas a low value of the scoring function indicates the window has an unknown format;
compare portions of the window having an unknown format with neighboring windows to determine fragment boundaries;
calculate statistics of bits in the window based on formats of the neighboring windows; and
identify a breakpoint based on the statistics of bits in the window;
a data compressor that compresses the plurality of fragments into a compressed stream using a compression technique selected based on the data format for each of the fragments; and
a memory that stores the compressed stream.

US Pat. No. 10,114,838

REFERENCE CARD FOR SCENE REFERRED METADATA CAPTURE

Dolby Laboratories Licens...

1. A method comprising:receiving one or more reference source images and one or more corresponding non-reference source images, the one or more reference source images comprising image data for one or more reference cards comprising a plurality of reference gray levels and primary colors used to digitally encode the reference source images;
generating one or more output images for the one or more corresponding non-reference source images;
deriving, based on the image data for the primary colors and gray levels of the one or more reference cards, scene-referred metadata comprising a set of reference values and a corresponding set of coded values, the corresponding set of coded values comprising coded values in the one or more output images;
generating a constructive set of scene-referred metadata by interpolating data from one of two or more existing reference source images and two or more existing scene-referred metadata; and
outputting the one or more output images with the scene-referred metadata as a part of image metadata for the one or more output images.

US Pat. No. 10,114,837

DISTRIBUTED TRANSACTION MANAGEMENT

Microsoft Technology Lice...

1. A system that processes a transaction on behalf of a node set, the system comprising:a processing unit; and
a memory storing instructions that, when executed by the processing unit, cause the distributed system to:
initiate a transaction involving data locally stored by a plurality of nodes of the node set,
send a transaction request to respective participating nodes of the node set to participate in the transaction,
receive, from the respective participating nodes, a commit time vote for the transaction according to a local clock maintained by the participating node,
based on the commit time votes of the respective participating nodes, determine a commit time for the transaction having a maximum count of votes among the plurality of participating nodes, and
initiate commit processing of the transaction by sending a commit request to the participating nodes of the node set, wherein the commit request includes the commit time for the transaction, wherein the notification enables the respective participating nodes that did not vote for the commit time selected for the transaction to advance the local clock to synchronize with the participating nodes that voted for the commit time.

US Pat. No. 10,114,835

VIRTUAL FILE SYSTEM FOR CLOUD-BASED SHARED CONTENT

Box, Inc., Redwood City,...

1. A method for accessing a file system in a cloud-based storage platform that stores shared content accessible over a network by two or more user devices, the method comprising:implementing a file system interface between the cloud-based storage platform and a virtual file system, in which the file system interface directs file system calls from an application running on one of the user devices to the virtual file system;
processing at least some of the file system calls received at the file system interface through a first operation pipeline comprising a local data manager that issues one or more of the file system calls to a file system executor that performs local processing to produce a series of file events;
receiving a file event from the first pipeline and initiating processing of the file event through a second pipeline comprising at least a first operation to access local metadata corresponding to the series of file events and a second operation to access a local cache to identify a portion of a file within the virtual file system; and
providing at least an identification of contents of the local cache to a remote storage application programming interface to initiate a change in the file system of the cloud-based storage platform, wherein the change to the file system of the cloud-based storage platform corresponds to the file event that was processed by accessing to the local metadata.

US Pat. No. 10,114,834

EXOGENOUS VIRTUAL MACHINE SYNCHRONIZATION AND REPLICATION

CA, Inc., New York, NY (...

1. A system to provide a virtualized replication and availability environment, the system comprising:a production server having hardware and configured to host at least a first part of a virtualization architecture, wherein:
the virtualization architecture comprises a parent partition that contains a virtualization stack having access to the hardware associated with the production server and one or more child partitions configured to execute one or more virtual machines, and
the one or more virtual machines include respective operating systems having respective file systems with virtual machine files accessed by respective applications configured to be executed in the respective operating systems;
a replica server having hardware and configured to host at least a second part of the virtualization architecture; and
a replication and availability engine installed in the production server, and external to the one or more virtual machines, wherein the replication and availability engine is configured to:
initially synchronize and then continuously or periodically replicate, while the one or more virtual machines execute on the production server, the virtual machine files associated with the one or more virtual machines executed in the one or more child partitions of the production server to the replica server by forming or updating replicated instances of the virtual machine files in association with data defining one or more replica virtual machines of the replica server, the one or more replica virtual machines having instances of the respective applications and being configured to execute a workload of the production server in place of the production server, wherein the replication and availability engine is configured to perform replication while the one or more replica virtual machines are not executing, wherein:
the second part of the virtualization architecture is configured to cause end users or workloads to be automatically redirected from the one or more virtual machines executed in the one or more child partitions on the production server to one or more on-demand virtual machines that are associated with corresponding replicated instances of virtual machine files and that are started in the one or more child partitions on the replica server, and
the second part of the virtualization architecture further includes a hypervisor configured to isolate the parent partition on the replica server from the one or more child partitions on the replica server.

US Pat. No. 10,114,832

GENERATING A DATA STREAM WITH A PREDICTABLE CHANGE RATE

EMC IP Holding Company LL...

1. A system, comprising:a processor configured to:
store an unmodified non-deduplicatable data stream, wherein the non-deduplicatable data stream comprises a non-compressible data stream and wherein the processor is further configured to generate the non-compressible data stream at least in part by:
receive an initialization parameter;
determine a first constrained prime number, wherein the first constrained prime number comprises a plurality of component values, wherein each of the plurality of component values comprises a prime number wherein each of the plurality of component values is different;
generate a first non-compressible sequence based at least in part on the initialization parameter and the first constrained prime number;
obtain a second non-compressible sequence, wherein the second non-compressible sequence is associated with the initialization parameter and a second constrained prime number; and
generate the non-compressible data stream including by merging the first non-compressible sequence and the second non-compressible sequence;
receive a change rate parameter, wherein the change rate parameter indicates an amount by which the unmodified non-deduplicatable data stream is to be modified; and
generate a modified data stream that differs from the unmodified non-deduplicatable data stream by the amount indicated by the change rate parameter wherein to generate the modified data stream, the processor is further configured to modify at least a portion of a plurality of data blocks associated with the non-deduplicatable data stream to obtain a corresponding portion of the modified data stream, wherein a data block of the plurality of data blocks is associated with a block size that is based on a segmenting attribute associated with a storage destination;
identify a set of new data blocks, wherein the set of new data blocks are identified based on comparing the unmodified non-deduplicatable data stream with the modified data stream;
determine a percentage of the modified data stream to store;
determine a deduplication result based on comparing the determined percentage to the change rate parameter; and
in response to determining that the determined percentage does not match the change rate parameter, reconfigure a deduplication technique; and
a memory coupled to the processor and configured to store the change rate parameter.

US Pat. No. 10,114,829

MANAGING DATA CACHE FOR FILE SYSTEM REALIZED WITHIN A FILE

EMC IP Holding Company LL...

1. A method for storing data in a data storage system, the method comprising:receiving, from a requestor, a request specifying a set of data to be written to a logical address in a first file system, the first file system realized as a file within a second file system;
creating a first log entry for the set of data in a first data log, the first data log (i) logging data to be written to the first file system, (ii) having a head and a tail, and (iii) arranged as a circular buffer;
creating a second log entry for the set of data in a second data log, the second data log logging data to be written to the second file system, the first log entry providing a reference to the second log entry;
storing the set of data in a cache page; and
acknowledging the requestor that the request has been completed.

US Pat. No. 10,114,828

LOCAL CONTENT SHARING THROUGH EDGE CACHING AND TIME-SHIFTED UPLOADS

International Business Ma...

1. A method for time-shifted uploading of a data file through a backhaul network to a backend provider, the method comprising:intercepting an upload request to the backend provider, wherein the intercepted upload request is associated with the data file from an originating user located at a network edge within a local network, and wherein the backhaul network connects the local network to the backend provider;
caching the data file associated with the upload request in the local network upstream of the backhaul network, wherein caching the data file associated with the upload request comprises storing a cached copy of the data file on a storage device located at the network edge of the local network;
uploading a placeholder file to the backend provider based on the intercepted upload request;
receiving a file identifier (ID) from the backend provider based on the uploaded placeholder file;
mapping the received file ID to the cached data file;
intercepting a request to access the data file at the backend provider by a requesting user located within the local network;
sending the requesting user the cached data file within the local network based on the mapping and the intercepted access request; and
uploading a copy of the data file to the backend provider through the backhaul network based on a backhaul utilization policy, wherein the backhaul utilization policy instructs the uploading to occur based on customer experience management rules, wherein uploading the copy of the data file to the backend provider comprises uploading a low quality version of the data file and then iteratively uploading a plurality of data overlays derived from a full quality version of the data file to increase a data quality of the copy stored at the backend service provider with each successive data overlay until the data quality of the copy stored at the backend service provider matches the full quality version of the data file, and wherein a data overlay is combined with the copy of the data file to generate a progressively higher quality data file stored at the backend service provider.

US Pat. No. 10,114,827

SYSTEM AND METHOD FOR AN INTELLIGENT E-MAIL AND CONTENT RESPOSITORY

DELL PRODUCTS, LP, Round...

1. An information handling system, comprising:a storage device; and
a repository that:
receives a first file;
modifies the first file to include first metadata that indicates that the first file is a first entry of a first thread;
stores the modified first file including the first metadata to the storage device;
receives a second file, wherein the second file is different from the first file;
determines that the second file includes the first metadata; and
modifies the second file to include second metadata that indicates that the second file is a second entry of the first thread and that the first file is a parent entry to the second file in response to determining that the second file includes the first metadata;
stores the modified second file including the first metadata and the second metadata to the storage device.

US Pat. No. 10,114,826

AUTONOMIC REGULATION OF A VOLATILE DATABASE TABLE ATTRIBUTE

International Business Ma...

1. A computer program product, comprising a plurality of computer-executable instructions recorded in a non-transitory computer-readable media, wherein said instructions, when executed by at least one computer system, cause the computer system to perform:monitoring at least one parameter of a database table of said computerized database over at least one time interval and saving monitored parameter data with respect to said database table;
determining a database table volatility state of said database table using the saved monitored parameter data, said database table volatility state being a property of said database table that is a function of changes to data recorded in said database table with respect to time, said database table volatility state being independent of any queries against data in said database table; and
responsive to determining a database table volatility state of said database table using the saved monitored parameter data, generating and saving at least one database table volatility attribute expressing the database table volatility state of said database table, said at least one volatility attribute being used by a process executing on the at least one computer system to manage access to data in said database table, wherein said at least one volatility attribute is used to manage access to data in said database table by at least one of: (a) using said at least one volatility attribute to determine an optimum query execution strategy for a query against data in said database table, (b) using said at least one volatility attribute to determine whether to re-optimize a previously saved query execution strategy for a query against data in said database table, (c) using said at least one volatility attribute to determine whether to collect statistical data regarding said database table, and (d) using said at least one volatility attribute to manage storage and/or retrieval of data in said at least one database table.

US Pat. No. 10,114,825

DYNAMIC RESOURCE-BASED PARALLELIZATION IN DISTRIBUTED QUERY EXECUTION FRAMEWORKS

SAP SE, Walldorf (DE)

1. A method comprising:receiving, at runtime, by a database server from a remote application server, a query associated with a calculation scenario defining a data flow model, the data flow model comprising a plurality of calculation nodes defining a plurality operations to be executed at runtime by a calculation engine on the database server, the plurality of calculation nodes comprising a dynamic split operator, the dynamic split operator identifying at least one operation of the plurality of operations as available for parallelizing, the dynamic split operator further comprising a criterion to be evaluated to determine, based at least on an input of the at least one operation, a quantity of partitions for splitting the input, the at least one operation being performed on each partition of the input in parallel, the criterion being evaluated during an execution of an execution plan associated with the plurality of operation instead of during a generation of the execution plan, and the criterion quantifying an amount of available database resources necessary to allow parallelization of the at least one operation without negatively affecting other processes running on the database server;
instantiating, by the database server, a runtime model of the calculation scenario based on the plurality of calculation nodes;
generating, at runtime from the runtime model of the calculation scenario, the execution plan specifying how the plurality of operations are to be executed against a database managed by the database server, the runtime model comprising the dynamic split operator;
executing, by the database server, the execution plan, the execution of the execution plan comprising:
evaluating the criterion to at least determine, during the execution of the execution plan, the quantity of partitions for splitting the input, the criterion being evaluated based at least on the input to the at least operation; and
splitting, during the execution of the execution plan, the input into a first partition and a second partition, the splitting being based at least on the quantity of partitions, the first partition and the second partition being operated upon by two or more parallel processor threads comprising the at least one operation; and
providing, by the database server to the application server, the data set.

US Pat. No. 10,114,824

TECHNIQUES FOR PROVIDING A USER WITH CONTENT RECOMMENDATIONS

Verizon Patent and Licens...

1. A method performed by a server device, the method comprising:determining, by the server device, recommendations for media content for a user based on user profile information and a viewing history of media content of the user, the recommendations being further based on features associated with each item of the media content,
wherein each feature is associated with a category and, on a per-user basis:
a weight for the category,
a raw score for the feature, and
a weighted score that is based on the weight for the category and the score for the feature,
wherein the determining of the recommendations for the media content includes using a multi-tiered utility matrix for determining the recommendations for the media content;
communicating, by the server device and to a user device associated with the user,
the recommendations for the media content, and
one or more reasons for which the server device determined the recommendations, wherein the one or more reasons indicate a set of features, of the recommended media content, that were used in the determination of the recommendations,
wherein communicating the recommendations and the one or more reasons allows the user device to present at least one of the recommendations and at least one of the features, of the set of features that were used in the determination of the recommendations;
receiving, by the server device, feedback, from the user device, regarding:
the recommendations for the media content, and
the at least one feature, of the set of features used by the server device to determine the recommendations;
modifying, by the server device, the weighted score for the at least one feature, the modifying including at least one of:
modifying the weight for the category associated with the at least one feature, or
modifying the raw score for the at least one feature;
determining, by the server device, recommendations for different media content for the user based on:
the feedback regarding the recommendations for the media content, and
the modified weighted score, as determined based on the feedback regarding the at least one feature, of the set of features that were used by the server device to determine the recommendations,
wherein the determining of the recommendations for the different media content includes:
updating the multi-tiered utility matrix based on the feedback regarding the recommendations for the media content and the modified weighted score, as determined based on the feedback regarding the at least one feature, of the set of features, that were used to determine the recommendations, and
determining the recommendations for the different media content further based on the updated multi-tiered utility matrix; and
communicating, by the server device and to the user device, the recommendations for the different media content.

US Pat. No. 10,114,822

ENHANCED REPORTING SYSTEM

SAP SE, Walldorf (DE)

1. A system comprising:a computer processor;
a first database system coupled to the computer processor, the first database system comprising a plurality of tables; and
a second database system coupled to the computer processor, the second database system comprising a subset of the tables in the first database system;
wherein the computer processor is operable to identify a plurality of reports that are currently generated using the second database system;
wherein the computer processor is operable to automatically identify without user input a plurality of reports that are not currently generated using the second database system but that are capable of being generated using the second database system;
wherein the computer processor is operable to display on a computer display device a list of the plurality of reports that are not currently generated using the second database system but that are capable of being generated using the second database system;
wherein the computer processor is operable to receive input from a user selecting one or more of the plurality of reports, generate the selected reports, and display the generated reports on a computer display device;
wherein the computer processor is operable to receive input identifying an additional report to be generated, the additional report to be generated requiring one or more tables that are not on the second database system;
wherein the computer processor is operable to identify the one or more tables that are not on the second database system and that are needed to generate the additional report;
wherein the computer processor is operable to determine the size of each of the one or more tables that are not on the second database system and that are needed to generate the additional report;
wherein the computer processor is operable to display on the computer display device a list of the one or more tables and the size of the one or more tables that are not on the second database system and that are needed to generate the additional report; and
wherein the computer processor is operable to display a list of a plurality of additional reports that are currently not generated using the second database system sorted by number of additional tables that are required to generate the additional report and size of additional tables needed to generate the additional report.

US Pat. No. 10,114,818

SYSTEM AND METHOD FOR LOCATING BILINGUAL WEB SITES

1. A method comprising:performing a generic web crawl to identify a first webpage in a first language having a link thereon which points to a second webpage in a second language, wherein the first webpage and the second webpage comprise a bilingual website;
based on an analysis of parameters on the first webpage comprising at least two of: the link pointing to the second webpage, a title, a link neighborhood, a link context and data indicating a separate version of the first webpage, classifying the first webpage as a root page and as an entry point for the bilingual website via the link to the second webpage;
performing a bidirectional web crawl between the first webpage and the second webpage to identify the first webpage and the second webpage as the bilingual website, the bidirectional web crawl utilizing classifications of links to avoid links having a low respective relevance;
extracting information pairs from the first webpage and the second webpage for use in a language translation model, the information pairs comprising at least one of a word pair, a paragraph pair and a sentence pair; and
updating a statistical model with domain representative data using the information pairs.

US Pat. No. 10,114,817

DATA MINING MULTILINGUAL AND CONTEXTUAL COGNATES FROM USER PROFILES

Microsoft Technology Lice...

1. A method comprising:storing a plurality of multi-language profiles of a plurality of users;
identifying one or more multilingual cognates in each profile of the plurality of multi-language profiles;
based on the one or more multilingual cognates identified in each profile of the plurality of multi-language profiles, generating one or more translation models;
receiving input that indicates a selection, by a second user, of data that is associated with a first user that is different than the second user, wherein the plurality of users includes users other than the second user and the first user;
determining a first language that is associated with the first user;
determining a second language that is different than the first language and that is associated with the second user;
wherein a plurality of data items in a profile of the first user are in the first language;
translating the plurality of data items into the second language using the one or more translation models;
in response to receiving the input, causing a translated version of the plurality of data items to be displayed to the second user, wherein the translated version is in the second language;
wherein the method is performed by one or more computing devices.

US Pat. No. 10,114,816

ASSESSING COMPLEXITY OF DIALOGS TO STREAMLINE HANDLING OF SERVICE REQUESTS

INTERNATIONAL BUSINESS MA...

1. A computer-implemented dialogue complexity assessment method, the method comprising:calculating a complexity utilizing domain-dependent terms and domain-independent terms of a dialogue in stages by:
computing a complexity of the dialogue at an utterance level;
computing a complexity of the dialogue at a turn level; and
computing a complexity of the dialogue based on the complexity of the constituent turns and utterances,
wherein the complexity calculation distinguishes between any of a domain-dependent term, a common language term, and a stop word in the dialogue.

US Pat. No. 10,114,815

CORE POINTS ASSOCIATIONS SENTIMENT ANALYSIS IN LARGE DOCUMENTS

INTERNATIONAL BUSINESS MA...

1. A method comprising:aggregating, from a set of points extracted from a large document, a set of core points, a point and a core point each being a topic covered in the document;
constructing, for the core point in the set of core points, a network of associations, wherein an association in the network comprises an entity that has a relationship with the core point by virtue of having contributed data in the document that relates to the core point;
computing, from the contributed data a sentiment value of the contributed data, the sentiment value being indicative of a sentiment of the entity towards the core point;
analyzing a data stream from a data source other than the document to isolate a portion of data stream that relates to the core point;
identifying a second entity in the portion of the data stream, wherein the second entity contributes the portion of the data stream that relates to the core point;
computing, from the portion of the data stream that relates to the core point, a second sentiment value of the second entity towards the core point;
determining that the second entity does not exist in the network of associations;
adding, responsive to determining that the second entity does not exist in the network of associations, the second entity and the second sentiment value to the network of associations;
computing from a set of sentiment values corresponding to the associations in the network of associations, an overall sentiment value for the core point; and
reporting overall sentiment values for each core point in the document.

US Pat. No. 10,114,813

MOBILE TERMINAL AND CONTROL METHOD THEREOF

LG ELECTRONICS INC., Seo...

1. A display device, comprising:a display;
a sound sensor;
a network interface for communicating with a voice recognition server;
a database; and
a controller configured to:
display, on the display, a content including text,
extract the text from in the displayed content,
store the extracted text and a weight of the extracted text in the database for a predetermined time period,
update the database by increasing the weight to the stored text when a user's voice corresponding to the stored text is received within the predetermined time period through the sound sensor,
update the database by decreasing the weight to the stored text when the user's voice corresponding to the stored text is not received within the predetermined time period through the sound sensor,
calculate a first matching score representing a degree of matching between the user's voice and the stored text and a second matching score between the user's voice and text stored in the voice recognition server,
select the text corresponding to a higher score among the first matching score reflecting the weight and the second matching score, and
display, on the display, the selected text,
wherein the controller is configured to communicate with a search server via the network interface, and transmit text selected from among at least one displayed text to the search server and to receive a search result corresponding to the transmitted text from the search server and to display the received search result.

US Pat. No. 10,114,812

METHOD, APPARATUS, AND COMPUTER PROGRAM PRODUCT FOR SOLVING AN EQUATION SYSTEM USING PURE SPREADSHEET FUNCTIONS

1. A method for computing a value of a root formula expression stored in a spreadsheet software application, the method comprising:A) displaying and operating one or more tabular datasheets by executing the spreadsheet software application on a computer device, each tabular datasheet having a plurality of cells each being designated with a column identifier and a row identifier, the cells being configured to receive values or formula expressions input, evaluate formula expressions, and display output; and
B) providing a programming interface to the spreadsheet software application, the programming interface being configured to:
B1) receive the identifiers for at least one of the cells and retrieve a value or a formula expression from the one of the cells;
B2) receive at least an evaluable formula expression, and evaluate its equivalent value, wherein the evaluable formula expression represents an independent textual expression that is evaluated to an equivalent numerical value by said programming interface; and
C) providing a graph constructor algorithm for representing the root formula and its interdependence on an additional nested formulas and the variables on a tree-structured graph of relational nodes, the graph constructor algorithm comprising:
C1) receiving the identifiers for the root formula's cell and the variables' cells and communicating with said programming interface to retrieve the root formula expression;
C2) identifying and retrieving the expressions for the additional nested formulas expressions on which the root formula depends by traversing the dependency of any retrieved expression on additional formulas;
C3) constructing a tree-structured graph of relational nodes for representing the interdependence of the root formula expression on the additional nested formulas expressions and the variables;
C4) transforming the tree-structured graph into an evaluation graph of relational nodes containing an equivalent sequence of formula expressions; and
D) providing a graph evaluator algorithm for evaluating said evaluation graph, the graph evaluator algorithm comprising:
D1) receiving said evaluation graph and a supply of values for the variables;
D2) traversing the relational nodes of said evaluation graph in an order of their interdependence and transforming the formula expression in each relational node into an evaluable formula expression by replacing the variables in said formula expression in the relational node by the supplied values of the variables, and any reference to a traversed child relational node;
D3) obtaining a value of the relational node by evaluating the value of the evaluable formula expression in the relational node via said programming interface;
D4) aggregating the obtained values of the relational nodes in an order of their interdependence to obtain the value of the root formula expression; and
E) providing a computer software application communicable with the spreadsheet software application via said programming interface, the computer software application being configured to execute said graph constructor algorithm followed by said graph evaluator algorithm obtaining the value of the root formula expression in accordance with the supplied values of the one or more variables for the root formula, the root formula depending on the variables explicitly or implicitly through interdependence on the additional nested formulas, not storing or modifying any stored values in the spreadsheet application.

US Pat. No. 10,114,811

METHODS AND SYSTEMS FOR VALIDATING MULTIPLE METHODS OF INPUT USING A UNIFIED RULE SET

Citrix Systems, Inc., Fo...

1. A server for validating input using a unified rule set, the server comprising:one or more processors configured to execute one or more modules of an application programming interface (API); and
a memory storing the one or more modules of the API, the API comprising a definition of a unified rule set of input validation rules that are executable by different components of a system:
wherein the unified rule set comprises two or more sets of input validation rules in which set membership is based in part on where an input validation rule is to be executed, the unified rule set comprising:
a first set of input validation rules including rules that are to be executed by the API, and
a second set of input validation rules including rules that are to be executed by a first component downward from the API, wherein the downward component is on a device separate from the server;
wherein input is received from the downward component, wherein the input has been validated using the second set of validation rules; and
whether the input is valid is determined using the first set of validation rules.

US Pat. No. 10,114,809

METHOD AND APPARATUS FOR PHONETICALLY ANNOTATING TEXT

TENCENT TECHNOLOGY (SHENZ...

1. A method, comprising:at a computing device having one or more processors and memory:
receiving a text input from a user, including receiving copied or scanned text for which context-appropriate phonetic annotation is to be performed at the computing device;
identifying a first polyphonic word segment and a first monophonic word segment in the text input, the first polyphonic word segment having at least a first pronunciation and a second pronunciation that is distinct from the first pronunciation, and the first monophonic word segment having a single pronunciation;
determining at least a first probability corresponding to the first pronunciation being a correct pronunciation for the first polyphonic word segment and a second probability corresponding to the second pronunciation being the correct pronunciation for the first polyphonic word segment, wherein the first probability is greater than the second probability;
determining a predetermined threshold difference based on: (1) a comparison of the first probability and the second probability with a preset threshold probability value, respectively, and (2) a magnitude of a difference between the first probability and the second probability;
comparing the difference between the first probability and the second probability with the predetermined threshold difference; and
selecting the first pronunciation as a current pronunciation for the first polyphonic word segment in accordance with a determination that the difference between the first probability and the second probability exceeds the predetermined threshold difference; and
in a text presentation user interface, displaying the input text concurrently with context-appropriate pronunciation annotations to facilitate a user's reading the input text aloud, including:
phonetically annotating the first monophonic word segment in the displayed input text with the single pronunciation of the first monophonic word segment;
phonetically annotating the first polyphonic word segment in the displayed input text with the first pronunciation of the first polyphonic word segment; and
forgoing phonetically annotating the first polyphonic word segment in the displayed input text with the second pronunciation of the first polyphonic word segment.

US Pat. No. 10,114,808

CONFLICT RESOLUTION OF ORIGINALLY PAPER BASED DATA ENTRY

International Business Ma...

1. A method for updating automated annotations for a paper based document, the method comprising:identifying, by an automated system utilizing optical character recognition, ambiguous content within a paper-based medical record, wherein the ambiguous content includes one or more terms that each correspond to a same acronym, wherein the automated system is located on one or more client devices and on a server that is communicatively coupled to the one or more client devices over a communications network;
highlighting, by the automated system, the ambiguous content, wherein the highlighted ambiguous content within the paper-based document comprises information corresponding to automated entity extraction;
including, by the automated system, an area of text that links to a choice box within a margin of the paper-based document;
transmitting, by the automated system and to the SME, an electronically transmitted image of the paper-based document;
receiving, by the automated system, an edited image of the paper-based document that includes:
at least one edited annotation made by the SME that clarifies the ambiguous content, wherein the edited at least one annotation comprises a manual edit using a pen on the paper-based document including the plurality of highlighted ambiguous content, wherein the manual edit using the pen comprises at least one of an approval of an annotation, a disapproval of an annotation, a clarification of an annotation, and an addition of an annotation, wherein the disapproval of the annotation comprises placing an “X” through the annotation, and wherein the approval of the annotation comprises placing a “check mark” through the annotation, and wherein the clarification of the annotation comprises placing a “check mark” in an appropriate check box, wherein the addition of the annotation comprises circling or underlining a non-annotated area of the paper-based document; and
an approval, by the SME filing in the choice box, of the at least one edited annotation;
extracting the at least one edited annotation from the received image of the paper-based document, wherein only the at least one edited annotation is identified while the remainder of the paper-based document is subtracted;
in response to determining the extracted at least one edited annotation is approved by the SME, adding the extracted at least one edited annotation of the paper-based document to a data retention system, wherein the data retention system is a structured data system located on the server and includes a plurality of electronic medical records (EMR), wherein the plurality of electronic medical records are an electronic representation of the medical record;
retrieving the approved added extracted at least one edited annotation to identify and update the plurality of EMR within the data retention system that include the highlighted ambiguous content by replacing the highlighted ambiguous content with the approved at least one edited annotation;
updating previously stored ambiguous content that was highlighted within the data retention system with the approved at least one edited annotation, and wherein updating the previously stored highlighted ambiguous content within the data retention system includes updating the previously stored highlighted ambiguous content within the one or more client devices; and
rescanning the paper-based document back into the automated system;
removing original text from the rescanned paper-based document; and
utilizing acronym token boundaries to identify any acronym tokens within the paper-based that are needed to be updated for future use in previously saved EMRs.

US Pat. No. 10,114,805

INLINE ADDRESS COMMANDS FOR CONTENT CUSTOMIZATION

Amazon Technologies, Inc....

1. A computer-implemented method, comprising:presenting, by a computing system, a network document associated with a uniform resource locator, the network document having a predetermined structure and being presented in a browser;
upon detecting a change in the uniform resource locator, and upon determining that the change in the uniform resource locator does not impact a domain name in the uniform resource locator associated with the network document, processing the change as a request from a user, the request comprising:
a first selector which indicates a first portion of the network document, the first portion comprising less than the entire network document;
a first action indicator which indicates a first change to be made to the first portion of the network document indicated by the first selector such that portions of the network document other than the indicated first portion remain unaffected by the first change, the first action indicator comprising a first method to be performed with respect to the indicated first portion that causes the first portion to be resized from its position in the predetermined structure;
a second selector which indicates a second portion of the network document that is distinct from the first portion of the network document, the second portion comprising less than the entire network document; and
a second action indicator which indicates a second change to be made to the second portion of the network document indicated by the second selector such that portions of the network document other than the indicated second portion remain unaffected by the second change, the second action indicator comprising a second method to be performed with respect to the indicated second portion that causes the second portion to be resized from its position in the predetermined structure;
asynchronously updating, by the computing system, the first portion of the network document such that the first portion is updated based on the first method, based at least in part on information contained within the request, with portions of the network document other than the indicated first portion of the network document remaining unchanged by the first change;
asynchronously updating, by the computing system, the second portion of the network document such that the second portion is updated based on the second method, based at least in part on the second selector and the second action contained within the request, with portions of the network document other than the indicated second portion of the network document remaining unchanged by the second change; andcausing the network document with the updated first portion and the updated second portion to be presented in the browser.

US Pat. No. 10,114,804

REPRESENTATION OF AN ELEMENT IN A PAGE VIA AN IDENTIFIER

INTERNATIONAL BUSINESS MA...

1. A computer program product comprising:a computer readable storage medium having computer readable program code embodied therewith, the computer readable program code readable by a processor to cause the processor to perform:
encountering a first element in a web page for a first time;
computing a first identifier for the first element using an algorithm responsive to the encountering of the first element,
wherein the first identifier represents a subtree;
causing the first identifier to be stored in a storage device using a hash representation of the first identifier to minimize a density of the storage device that is used when a history is unavailable for the first element in the storage device,
wherein the first identifier is available without re-computing the first identifier when the first identifier exists as the hash representation in the history, and
wherein a re-computing of the first identifier for the first element using the algorithm responsive to the encountering of the first element is performed and the re-computed first identified is stored as the hash representation in the history for future reference when the first identifier does not exists as the hash representation in the history;
subsequently encountering the first element two or more times in a different location of the web page and in a second web page;
representing the first element two or more times time of the subsequent encounters by retrieving the first identifier from the storage device,
wherein the algorithm computes the first identifier in a bottom-up fashion starting with leaf nodes and continuing to a root node, in a deterministic way to yield the first identifier when computing the first identifier, and
wherein the algorithm computes the first identifier in screening operation that comprises a first stripping out of the first element when it is deemed unimportant, a grouping of similar leaf nodes under the root node, a second stripping out of the first element when the first element is repeated two or more times within the similar leaf nodes under the root node, and repeating the grouping and the second stripping until there are no more duplicates to group; and
recursively computing respective unique identifiers for each of one or more subsequent elements derived from the first element,
wherein each of the one or more subsequent elements derived are from the first identifier and represented in the subtree by the respective unique identifiers,
wherein the recursive computing includes:
encountering a second element in a web page for a second time,
wherein the second element is derived from the first identifier;
computing a second identifier for the second element using the algorithm,
wherein second identifier is based on having encountered the second element, is different than the first identifier, and is stored within the subtree represented by the first identifier;
causing the second identifier to be stored in the storage device using a hash representation of the second identifier to minimize the density of the storage device that is used;
subsequently encountering the second element two or more times in a second different location of the web page and in the second web page; and
representing the second element by the second identifier at the time of the subsequent encounters by retrieving the second identifier from the storage device.

US Pat. No. 10,114,802

METHOD, DEVICE, AND SYSTEM FOR ACCESSING THIRD PARTY PLATFORMS VIA A MESSAGING APPLICATION

TENCENT TECHNOLOGY (SHENZ...

1. A method for providing a first client with access to information of a second client managed by an instant messaging server system, wherein the first client and the second client each have respective user accounts of the instant messaging server system, wherein the user account of the first client is a personal account that is a first type of user account of the instant messaging server system through which the first client exchanges instant messages with other user accounts of the instant messaging server system, and the user account of the second client is a Public Number that is a second type of user account of the instant messaging server system distinct from the first type of user account, through which the second client posts one or more documents to be broadcast to other user accounts of the instant messaging server system, the method comprising: the instant messaging server systemreceiving an information access request from the first client to subscribe to the Public Number of the second client by requesting information of the Public Number of the second client, wherein the information access request is generated by scanning a 2D barcode using a first user interface of an instant messaging application associated with the instant messaging server system, wherein the first user interface is displayed on a display of a client terminal through which the first client has logged into its user account at the instant messaging system, and the 2D barcode includes information identifying the Public Number of the second client;
in response to receiving the information access request generated by scanning the 2D barcode:
connecting the user account of the first client to the Public Number of the second client such that the user account of the first client is a follower of the Public Number;
generating an icon linked to the requested information of the Public Number of the second client; and
forwarding the icon to the first client, wherein the icon comprises the information identifying the Public Number of the second client, and wherein the icon is one of a plurality of icons to be arranged within a second user interface of the instant messaging application, displayed on the display of the client terminal in response to receiving the icon, each of the plurality of icons corresponding to a distinct Public Number to which the user account of the first client is subscribed, each Public Number being associated with a distinct client of the instant messaging server system;
receiving an information download request from the first client, wherein the information download request is generated by a user selection of the icon;
in response to the information download request:
generating one or more information snippets, each information snippet including a link to a respective document posted by the second client to the Public Number; and
returning the one or more information snippets to the client terminal, wherein the one or more information snippets correspond to the one or more documents posted by the second client and are to be arranged within a third user interface of the instant messaging application displayed on the display of the client terminal in replacement of the second user interface;
receiving, from the first client, a content viewing request for a respective information snippet displayed on the display of the client terminal, wherein the content viewing request is generated by a user selection of the respective information snippet within the third user interface; and
in response to the content viewing request, returning, to the client terminal, a respective document posted by the second client and corresponding to the respective information snippet, wherein the respective document is to be arranged within a fourth user interface of the instant messaging application displayed on the display of the client terminal in replacement of the third user interface.

US Pat. No. 10,114,801

TREEMAP OPTIMIZATION

ENTIT SOFTWARE LLC, Sunn...

1. A method executed by a system comprising a processor, comprising:accessing a plurality of data files in storage;
assigning a size value to each of the plurality of data files, wherein each size value is determined based on a size of a corresponding data file of the plurality of data files;
in ascending order of size value of the size values assigned to the plurality of data files, iteratively merging each of data files of a first subset of the plurality of data files into a merge file until a threshold is reached, the plurality of data files comprising a second subset of data files in addition to the first subset of data files;
displaying the second subset of data files as a plurality of boxes on a treemap on a display screen, wherein the size of each box of the plurality of boxes correlates to the size value of a corresponding data file of the second subset of data files, and displaying the merge file as a merge box on the treemap on the display screen; and
in response to user selection of the merge box in the treemap, presenting information of each individual data file of the first subset of data files merged into the merge file, the presented information enabling user access to the first subset of data files.

US Pat. No. 10,114,799

METHOD FOR ARRANGING IMAGES IN ELECTRONIC DOCUMENTS ON SMALL DEVICES

Canon Kabushiki Kaisha, ...

1. A method of displaying digital images using an image display device, the method comprising the steps of:displaying a plurality of digital images on the display device;
dragging, across an electronic document on the display device, a digital image from the plurality of displayed digital images in response to a user's designation;
making the plurality of displayed digital images partly transparent except for the dragged digital image while the digital image is dragged;
changing a display position of the dragged digital image according to a user operation; and
changing opacity properties of each of the plurality of displayed digital images other than the dragged digital image so that an opacity property of each of the plurality of displayed digital images other than the dragged digital image is restored to an opacity property possessed before the dragging commenced, the changing being performed once the dragging of the digital image across the electronic document is completed.

US Pat. No. 10,114,797

METHODS AND APPARATUS FOR PROVIDING A PROGRAMMABLE MIXED-RADIX DFT/IDFT PROCESSOR USING VECTOR ENGINES

Cavium, LLC, Santa Clara...

1. An apparatus, comprising:a memory bank;
a vector data path pipeline coupled to the memory bank, wherein the vector data path pipeline includes a vector scaling unit that receives vector data from the memory bank and outputs scaled vector data; and
a configurable mixed radix engine coupled to the vector data path pipeline, wherein the configurable mixed radix engine is configurable to perform a radix computation selected from a plurality of radix computations, and wherein the configurable mixed radix engine performs the selected radix computation on data received from the memory through the pipeline to generate a radix result.

US Pat. No. 10,114,796

EFFICIENT IMPLEMENTATION OF CASCADED BIQUADS

TEXAS INSTRUMENTS INCORPO...

1. A infinite impulse response (IIR) filter comprising:an input terminal to receive an input signal;
an output terminal to output an output signal;
a first multiplier circuit to multiply the input signal by the sum of a first filter coefficient and a second filter coefficient to produce a first signal, the first multiplier circuit having an input to receive the input signal and an output to output the first signal;
a second multiplier circuit to multiply the input signal by the sum of a third filter coefficient and a fourth filter coefficient to produce a second signal, the second multiplier circuit having an input to receive the input signal and an output to output the second signal;
a third multiplier circuit to multiply a feedback signal by the first filter coefficient to produce a third signal, the third multiplier circuit having an input to receive the feedback signal and an output to output the third signal;
a fourth multiplier circuit to multiply the feedback signal by the third filter coefficient to produce a fourth signal, the fourth multiplier circuit having an input to receive the feedback signal and an output to output the fourth signal;
a first summing circuit to sum the second and fourth signals to produce a fifth signal, the first summing circuit having first and second inputs to receive the second and fourth signals, respectively, and an output to output the fifth signal;
a first delay circuit to receive the fifth signal and apply a first delay thereto to produce a sixth signal, the first delay circuit having an input to receive the fifth signal and an output to output the sixth signal;
a second summing circuit to sum the first, third, and sixth signals to produce a seventh signal, the second summing circuit having first, second, and third inputs to receive the first, third, and sixth signals, respectively, and an output to output the seventh signal;
a second delay circuit to receive the seventh signal and apply a second delay thereto to produce an eighth signal, the second delay circuit having an input to receive the seventh signal and an output to output the eighth signal; and
a third summing circuit to sum the input signal and the eighth signal to produce the output signal;
wherein the eighth signal is the feedback signal.

US Pat. No. 10,114,795

PROCESSOR IN NON-VOLATILE STORAGE MEMORY

WESTERN DIGITAL TECHNOLOG...

1. A computing system comprising a device, the device comprising:a non-volatile memory divided into a plurality of selectable locations, each bit in the non-volatile memory configured to have corresponding data independently programmed and erased, wherein the selectable locations are grouped into a plurality of data lines;
one or more processing units coupled to the non-volatile memory, each of the processing units associated with a data line of the plurality of data lines, the one or more processing units comprising one or more reconfigurable processing units, the one or more processing units configured to:
manipulate, based on one or more instruction sets, data in an associated data line of the plurality of data lines to generate results that are stored in selectable locations of the associated data line reserved to store results of the manipulation;
determine which of the instruction sets are most frequently used by the one or more processing units to manipulate data; and
reconfigure the one or more reconfigurable processing units to manipulate data using the determined most frequently used instruction sets.

US Pat. No. 10,114,794

PROGRAMMABLE LOAD REPLAY PRECLUDING MECHANISM

VIA ALLIANCE SEMICONDUCTO...

1. An apparatus for reducing replays in an out-of-order processor, the apparatus comprising:a first reservation station, coupled to a hold bus, configured to dispatch a first load micro instruction, and configured to detect and indicate on the hold bus if said first load micro instruction is one of a plurality of specified load instructions directed to one of a plurality of non-core resources which are shared by a plurality of cores of the out-of-order processor;
replay reducer circuitry configured to evaluate an unmodified opcode portion of a load micro instruction that implicates a non-core resource, in order to detect said specified load micro instruction directed to non-core resources;
a second reservation station, coupled to said hold bus, configured to dispatch one or more younger micro instructions therein that depend on said first load micro instruction for execution after a first number of clock cycles following dispatch of said first load micro instruction, and if it is indicated, in response to the detection by the replay reducer circuit, on said hold bus that said first load micro instruction is said one of said plurality of specified load instructions, said second reservation station is configured to stall dispatch of said one or more younger micro instructions until said first load micro instruction has retrieved an operand;
load execution logic, coupled to said first reservation station, configured to receive and execute said first load micro instruction, wherein, if said first load micro instruction is not said specified load micro instruction, said load execution logic indicates on a miss bus if said first load micro instruction fails to successfully execute in said first number of clock cycles, thus initiating a replay of said one or more younger micro instructions, and wherein, if said first load micro instruction is said specified load micro instruction, said load execution logic does not indicate that said first load micro instruction fails to successfully execute if more than said first number of clock cycles are required to successfully execute, thus precluding a replay of said one or more younger micro instructions; and
said plurality of non-core resources which are located outside of said plurality of cores, comprising:
a fuse array, configured to store said plurality of specified load instructions corresponding to the out-of-order processor, wherein the out-of-order processor, upon initialization, accesses said fuse array to determine said plurality of specified load instructions.

US Pat. No. 10,114,793

METHOD AND APPARATUS FOR DETERMINING A WORK-GROUP SIZE

Samsung Electronics Co., ...

1. A method of determining a work-group size comprising:analyzing, using at least one processor, kernel code including a work-group;
calculating, using the at least one processor, a first value denoting spatial locality of a memory that is shared by one or more work items included in the work-group;
calculating, using the at least one processor, a second value denoting footprints of the one or more work items included in the work-group based on the first value;
determining, using the at least one processor, the work-group size based on the first and second values; and
executing, using the at least one processor, the kernel code using the determined work-group size, wherein
the calculating the first value includes,
converting a memory reference included in the kernel code into a symbol expression including at least one desired symbol,
partially evaluating the symbol expression by substituting a value corresponding to the at least one desired symbol included in the symbol expression into the symbol expression,
calculating a reuse distance by substituting a zero vector and unit vectors into the partially evaluated symbol expression, the zero vector based on a number of dimensions of a work-space of the kernel code, and each of the unit vectors corresponding to a separate dimension of the work-space; and
calculating the first value based on the calculated reuse distance and a memory line size of the memory.

US Pat. No. 10,114,792

LOW LATENCY REMOTE DIRECT MEMORY ACCESS FOR MICROSERVERS

CISCO TECHNOLOGY, INC, S...

1. A method, comprising:generating queue pairs (QPs) in a memory of an input/output (I/O) adapter of a microserver chassis having a plurality of compute nodes executing thereon, the QPs being associated with a remote direct memory access (RDMA) connection, based on an RDMA protocol, between a first compute node and a second compute node in the microserver chassis;
setting a flag in the QPs to indicate that the RDMA connection is local to the micro server chassis;
performing, in response to the flag, a loopback of RDMA packets within the I/O adapter from one memory region in the I/O adapter associated with the first compute node of the RDMA connection to another memory region in the I/O adapter associated with the second compute node of the RDMA connection, without sending the RDMA packets external to micro server chassis;
wherein an egress direct memory access (DMA) engine performs a lookup of the memory region in the I/O adapter associated with the first compute node of the RDMA connection according to a first microcode routine associated with an I/O operation as loaded by the second compute node and retrieves data according to the I/O operation; and
wherein an ingress DMA engine writes the data in the RDMA packets into the another memory region in the I/O adapter associated with the second compute node of the RDMA connection according to a second microcode routine loaded by an ingress packet classifier.

US Pat. No. 10,114,791

ELECTRONIC APPARATUS, CALCULATION PROCESSING METHOD, AND RECORDING MEDIUM STORING CALCULATION PROCESSING PROGRAM

CASIO COMPUTER CO., LTD.,...

1. An electronic apparatus comprising:a display;
a memory; and
a processor,
wherein the processor is configured to:
accept inputs of a plurality of equations including numerical data in response to user operations;
display, on the display, numerical data of a grand total of calculation results of the plurality of equations;
store, in the memory, the calculation results corresponding to the plurality of equations;
search at least one of the calculation results in response to at least one user operation, without searching contents of the plurality of equations;
display, on the display, the searched at least one of the calculation results;
compare whether a value of newly input numerical data for recalculation is equal to a value of corresponding input numerical data of the searched at least one of the calculation results; and
substitute, in the searched at least one of the calculation results, the newly input numerical data for the corresponding input numerical data without inputting any numerical value key again for substitution of the newly input numerical data in response to the comparison determining that the value of the newly input numerical data is not equal to the value of the corresponding input numerical data, and
wherein the substitution is performed by operating at least one key other than a numerical value key.

US Pat. No. 10,114,788

ADJUSTING AN OPTIMIZATION PARAMETER TO CUSTOMIZE A SIGNAL EYE FOR A TARGET CHIP ON A SHARED BUS

International Business Ma...

1. A system, comprising:a shared bus;
a plurality of chips coupled to respective locations along the shared bus;
a driver coupled to a first end of the shared bus;
a dynamic termination resistor coupled to a second end of the shared bus; and
configuration logic configured to:
evaluate received data to identify at least one target chip of the plurality of chips, wherein the target chip is an intended recipient of the received data,
adjust a resistance value of the termination resistor based upon a location of the target chip on the shared bus before the driver transmits the received data on the shared bus; and
a communication link coupled to the configuration logic and the termination resistor, wherein the communication link is separate and disconnected from the shared bus, and wherein the configuration logic is configured to transmit control signals on the communication link to change the resistance value of the termination resistor.

US Pat. No. 10,114,787

DEVICE IDENTIFICATION GENERATION IN ELECTRONIC DEVICES TO ALLOW EXTERNAL CONTROL OF DEVICE IDENTIFICATION FOR BUS COMMUNICATIONS IDENTIFICATION, AND RELATED SYSTEMS AND METHODS

QUALCOMM Incorporated, S...

1. A bus communications system for allowing a slave device coupled to a communications bus to reprogram its device identification, comprising:the communications bus comprised of a data line and a clock line;
a master device comprised of a master data port and a master clock port, the master device coupled to the communications bus by the master data port coupled to the data line and the master clock port coupled to the clock line;
the slave device comprising:
a device identification port coupled to the communications bus, the device identification port comprising one of a data pin and a clock pin, the data pin coupled to the data line of the communications bus, and the clock pin coupled to the clock line of the communications bus; and
a device identification generation circuit coupled to the device identification port, the device identification generation circuit configured to:
detect an electrical characteristic of a communications bus signal received from the communications bus on the device identification port through the one of the data pin and the clock pin;
generate a device identification based on the detected electrical characteristic selected from a plurality of device identifications provided in the slave device; and
store the generated device identification in a device identification memory;
an alternative current (AC) couple coupled to the device identification port;
an external resistor coupled to the device identification port;
a switch configured to switchably couple the external resistor to the device identification port; and
a switch control line configured to control an opening or closing of the switch,
wherein the master device is configured to generate a control signal on the switch control line to cause the switch to open or close to control coupling of the external resistor to the device identification port.

US Pat. No. 10,114,786

BACK CHANNEL SUPPORT FOR SYSTEMS WITH SPLIT LANE SWAP

CISCO TECHNOLOGY, INC., ...

1. A method comprising:configuring a back channel layer to form a back channel path to carry a first message to a first transmitter from a first receiver, wherein the first transmitter is in a first serializer/deserializer (SERDES) slice of a plurality of SERDES slices, and the first SERDES slice is assigned a lane ID;
receiving, at the first receiver, a second message, wherein the first receiver is in a second SERDES slice of a plurality of SERDES slices, and the back channel layer inserts a recipient ID in the second message to produce the first message; and
determining, with an interface layer, whether the recipient ID in the first message matches the lane ID, wherein the interface layer interfaces to the first SERDES slice.

US Pat. No. 10,114,785

STORAGE DEVICE AND SERVER DEVICE

Toshiba Memory Corporatio...

1. A storage device comprising:a memory configured to store data;
a control circuit configured to control writing of data to the memory and reading of data from the memory;
an interface circuit that includes a first terminal, a second terminal, and a third terminal, and configured to be connected to a first device or a second device,
the first terminal having a first status when the storage device and the first device are connected, and a second status when the storage device and the second device are connected,
the second terminal having a third status where a first power of first voltage is supplied from the first device to the storage device when the first terminal is in the first status, and a fourth status where a control signal is input from the second device to the storage device when the first terminal is in the second status,
the third terminal being a terminal through which a second power of second voltage is supplied to the storage device; and
a switch control circuit configured to control switching a connection status and a disconnection status based on statuses of the first terminal and the second terminal, the connection status representing that the third terminal and the control circuit are electrically connected, the disconnection status representing that the third terminal and the control circuit are electrically disconnected.

US Pat. No. 10,114,782

USB TYPE C DUAL-ROLE-PORT UNATTACHED DUTY CYCLE RANDOMIZATION

NXP B.V., Eindhoven (NL)...

1. A universal serial bus (USB) circuit, comprising:a USB interface configured to transmit and receive power and data;
a random number generator circuit configured to generate a random number; and
a controller configured to receive the random number and to select a dual role port (DRP) duty cycle and to select a DRP duration based upon the random number, wherein the DRP duty cycle and DRP duration are used when connecting the USB interface of a first USB type-C DRP device to a USB interface of a second USB type-C DRP device.

US Pat. No. 10,114,780

INFORMATION PROCESSING APPARATUS THAT PERMITS USE OF A USB DEVICE BY AN APPLICATION BEING DISPLAYED, METHOD OF CONTROLLING THE SAME AND NON-TRANSITORY COMPUTER READABLE MEDIUM

Canon Kabushiki Kaisha, ...

1. An information processing apparatus in which a plurality of applications operate, the apparatus comprising:an identification unit configured to identify, from among the plurality of applications, an application that is being displayed in a display unit; and
a control unit configured to perform control so that while one application among the plurality of applications is occupying a USB device USB-connected to the information processing apparatus, another application cannot use the USB device;
wherein the control unit performs control so as to forcibly close usage of the USB device by an application for which usage of the USB device is permitted, and permit usage of the USB device by the application identified as being displayed in the display unit.

US Pat. No. 10,114,779

ISOLATING A REDIRECTED USB DEVICE TO A SET OF APPLICATIONS

Dell Products L.P., Roun...

1. A method, implemented by a virtual bus driver, for isolating a redirected USB device to a set of applications, the method comprising:receiving, at a virtual bus driver executing on a server with which a client terminal has established a remote session, a first USB request block (URB) that is associated with a first IO request packet (IRP) and directed to a USB device that is redirected from the client terminal to the server;
evaluating the first IRP to determine an application that originated the first IRP;
determining whether the application that originated the first IRP is allowed to access the redirected USB device;
upon determining that the application that originated the first IRP is not allowed to access the redirected USB device, preventing the first URB and the associated first IRP from being routed over the remote session to the redirected USB device;
receiving, at the virtual bus driver, a second URB that is associated with a second IRP and directed to the redirected USB device;
evaluating the second IRP to determine an application that originated the second IRP;
determining whether the application that originated the second IRP is allowed to access the redirected USB device; and
upon determining that the application that originated the second IRP is allowed to access the redirected USB device, allowing the second URB and the associated second IRP to be routed over the remote session to the redirected USB device.

US Pat. No. 10,114,778

MULTI-PROTOCOL IO INFRASTRUCTURE FOR A FLEXIBLE STORAGE PLATFORM

Samsung Electronics Co., ...

1. A storage system, comprising:a storage motherboard, comprising:
a first plurality of storage interface connectors;
a cable connector; and
a storage adapter circuit having a host side interface connected to the cable connector and a first plurality of storage side interfaces, each connected to a respective storage interface connector of the storage interface connectors, the storage adapter circuit comprising:
a first protocol translator, configured to translate communications from a host interface protocol to a first storage interface protocol;
a second protocol translator, configured to translate communications from a host interface protocol to a second storage interface protocol;
a first consolidation device configured to connect the first protocol translator to a plurality of storage devices configured to use the first storage interface protocol;
a second consolidation device configured to connect the second protocol translator to a plurality of storage devices configured to use the second storage interface protocol; and
a storage adapter circuit controller configured to:
detect a protocol of a mass storage device connected to a connector of the first plurality of storage interface connectors,
connect the first protocol translator to the host side interface, and connect the first consolidation device between the first protocol translator and the first plurality of storage side interfaces, when the detected protocol is the first protocol, and
connect the second protocol translator to the host side interface, and connect the second consolidation device between the second protocol translator and the first plurality of storage side interfaces, when the detected protocol is the second protocol.

US Pat. No. 10,114,777

I/O SYNCHRONIZATION FOR HIGH INTEGRITY MULTICORE PROCESSING

Rockwell Collins, Inc., ...

1. A system for input/output (I/O) synchronization in a high-integrity multicore processing environment (MCPE), comprising:at least one logical processing unit (LPU) comprising a plurality of homogeneous processing cores, each homogeneous processing core associated with at least one of a guest operating system (GOS) and a user application configured to execute on the homogeneous processing core, each GOS configured to concurrently:
forward at least one input dataset to the at least one user application;
receive at least one output dataset from the at least one user application; and
load the received output dataset into an output I/O synchronization (IOS) channel;
at least one I/O synchronization engine (IOSE) connected to the at least one LPU and comprising the at least one output IOS channel and at least one input IOS channel, the IOSE configured to:
execute at least one verification of the at least one loaded output dataset;
return at least one successful verification by selecting a final output dataset from the at least one loaded output dataset;
route the final output dataset to at least one of an external processing core and a network connected to the MCPE;
receive the at least one input dataset from the at least one of the external processing core and the network;
generate at least one synchronous input by atomically replicating the at least one input dataset into the at least one input IOS channel;
and
concurrently transfer the at least one synchronous input to the at least one GOS via the at least one input IOS channel;
and
at least one hypervisor coupled to the at least one LPU and configured to synchronize the receipt of the at least one output dataset by the at least one GOS.

US Pat. No. 10,114,776

SYSTEM ARBITER WITH PROGRAMMABLE PRIORITY LEVELS

MICROCHIP TECHNOLOGY INCO...

1. An embedded controller comprising:a system bus;
a central processing unit (“CPU”) communicatively coupled to the system bus, the central processing unit comprising a CPU priority register, and the central processing unit operable to access the system according to a plurality of operating modes;
a plurality of arbiter clients communicatively coupled to the system bus, each of the plurality of arbiter clients comprising a programmable priority register; and
a programmable system arbiter for granting access to the system bus among the plurality of arbiter clients and the central processing unit, the programmable system arbiter communicatively coupled to the plurality of arbiter clients and the system bus and the central processing unit, wherein:
the programmable system arbiter comprises one or more interrupt priority registers, each of the one or more interrupt priority registers associated with an interrupt type; and
the programmable system arbiter is operable to arbitrate access to the system bus among the plurality of arbiter clients and the CPU based at least on an analysis of a programmed priority order, the programmed priority order comprising a priority order for each of the plurality of arbiter clients, each of the plurality of operating modes, and each of the one or more interrupt types.

US Pat. No. 10,114,775

STACKED SEMICONDUCTOR DEVICE ASSEMBLY IN COMPUTER SYSTEM

RAMBUS INC., Sunnyvale, ...

1. A stacked semiconductor device assembly, comprising:first and second integrated circuit (IC) devices,
wherein the first IC device includes:
a first master interface;
a first channel master circuit coupled to the first master interface and configured to receive read/write data using the first master interface;
a first slave interface;
a first channel slave circuit coupled to the first slave interface and configured to receive read/write data using the first slave interface;
a first memory core coupled to the first channel slave circuit via a first core interface; and
a first modal pad;
wherein the second IC device includes:
a second master interface;
a second channel master circuit coupled to the second master interface and configured to receive read/write data using the second master interface;
a second slave interface;
a second channel slave circuit coupled to the second slave interface and configured to receive read/write data using the second slave interface;
a second memory core coupled to the second channel slave circuit via a second core interface; and
a second modal pad; and
wherein the first and second IC devices are configured such that in response to at least a modal selection signal received at one of the modal pads of the first and second IC devices, one of the first and second IC devices is configured to receive read/write data using its respective channel master circuit, and the other of the first and second IC devices is configured to receive read/write data using its respective channel slave circuit.

US Pat. No. 10,114,773

TECHNIQUES FOR HANDLING INTERRUPTS IN A PROCESSING UNIT USING VIRTUAL PROCESSOR THREAD GROUPS AND SOFTWARE STACK LEVELS

International Business Ma...

1. A method of handling interrupts in a data processing system, the method comprising:receiving, at an interrupt presentation controller (IPC), an event notification message (ENM), wherein the ENM specifies a level, an event target number, and a number of bits to ignore;
determining, by the IPC, a group of virtual processor threads that may be potentially interrupted based on the event target number, the number of bits to ignore, and a process identifier (ID) when the level specified in the ENM corresponds to a user level, wherein the event target number identifies a specific virtual processor thread and the number of bits to ignore identifies the number of lower-order bits to ignore with respect to the specific virtual processor thread when determining the group of virtual processor threads that may be potentially interrupted; and
selecting a single virtual processor thread from the group of virtual processor threads to service the interrupt.

US Pat. No. 10,114,772

ADDRESS LAYOUT OVER PHYSICAL MEMORY

International Business Ma...

1. A method for translating, within a main memory of a computer system, a physical address of a memory line to a storage location of the memory line, the main memory including a plurality of memory devices, each memory device of the plurality memory devices having a respective memory capacity, each of the respective memory capacities including at least one contiguous memory portion of a uniform size, the memory line being stored in one of the at least one contiguous memory portions, the method comprising:calculating, with a first index calculation unit, for the physical address, a first row index that identifies, within a first data table structure having a set of consecutive rows, wherein each row of the set of consecutive rows is configured to uniquely identify one of the at least one contiguous memory portions, a row of the first data table structure that identifies a memory portion, of the at least one contiguous memory portions, that includes the storage location of the memory line.

US Pat. No. 10,114,771

INTERCONNECTION OF PERIPHERAL DEVICES ON DIFFERENT ELECTRONIC DEVICES

Open Invention Network LL...

1. A method, comprising:creating a generic virtual device object via a processor of an electronic device, the generic virtual device object representing an image of a peripheral device attached to the electronic device and comprising properties of the peripheral device;
installing the generic virtual device object on a remote electronic device using existent setup information of the electronic device;
receiving data at the electronic device from a remote peripheral device attached to the remote electronic device;
generating a setup file via the electronic device responsive to determining a device class of the remote peripheral device attached to the remote electronic device is a same one as a device class of the peripheral device attached to the electronic device;
installing a remote virtual device object at the remote peripheral device via the setup file; and
emulating the remote peripheral device from the electronic device via an emulation driver loaded by the remote virtual device object;
wherein the remote virtual device object is created for the emulation driver.

US Pat. No. 10,114,768

ENHANCE MEMORY ACCESS PERMISSION BASED ON PER-PAGE CURRENT PRIVILEGE LEVEL

Intel Corporation, Santa...

1. A processing system comprising:a processing core; and
a memory management unit, communicatively coupled to the processing core, comprising:
a storage device to store a page table entry (PTE) comprising:
a mapping from a virtual memory page referenced by an application running on the processing core to an identifier of a memory frame of a memory,
a first plurality of access permission flags associated with accessing the memory frame under a first privilege mode, and
a second plurality of access permission flags associated with accessing the memory under a second privilege mode,
wherein the memory management unit is to allow:
accessing the memory frame under the first privilege mode based on the first plurality of access permission flags when a privilege configuration flag is set to enabled;
accessing the memory frame under the second privilege mode based on the second plurality of access permission flags when the privilege configuration flag is enabled; and
accessing the memory frame under the first privilege mode or the second privilege mode based on commonly shared access permission flags from the first plurality of access permission flags and the second plurality of access permission flags when the privilege configuration flag is disabled.

US Pat. No. 10,114,765

AUTOMATIC RECOVERY OF APPLICATION CACHE WARMTH

Microsoft Technology Lice...

1. A computer system, comprising:one or more processors; and
one or more hardware storage devices having stored thereon computer-executable instructions that are executable by the one or more processors to cause the computer system to perform at least the following:
during operation of an application in a first state,
identify one or more cache portions in an application cache associated with the application;
capture a cache portion identifier associated with each of the one or more cache portions, each cache portion identifier comprising less than entirety of the associated cache portion; and
store the one or more cache portions in a first data store that is external to the application cache and each captured cache portion identifier in a second data store that is separate from the first external store;
after storing the one or more cache portions in the first data store, detect a first change in state of the application to a second state;
after detecting the change in state of the application to the second state, detect a second change in state of the application back to the first state; and
based at least on detecting the second change in state of the application back to the first state,
retrieve the one or more cache portions from the first data store using one or more of the captured cache portion identifiers stored in the second data store; and
store each retrieved one or more cache portions in the application cache, such that the application cache is warmed for the first state.

US Pat. No. 10,114,762

METHOD AND APPARATUS FOR QUERYING PHYSICAL MEMORY ADDRESS

Huawei Technologies Co., ...

1. A method for querying a physical address to access a memory, the method comprising:deleting data stored in a prefetch buffer;
storing, after deleting the data, page table entries of a second thread into the prefetch buffer when determining that a memory addressing operation will be switched from a first thread to the second thread within a future set time, wherein the page table entries of the second thread were previously stored in a standby buffer corresponding to only the second thread, and wherein the standby buffer stores page table entries of the second thread that are not queried within a set time in a translation lookaside buffer (TLB);
receiving a memory addressing request message corresponding to the second thread, wherein the memory addressing request message comprises a virtual address; and
querying, in parallel, page table entries stored in the TLB and the page table entries stored in the prefetch buffer for the virtual address.

US Pat. No. 10,114,753

USING CACHE LISTS FOR MULTIPLE PROCESSORS TO CACHE AND DEMOTE TRACKS IN A STORAGE SYSTEM

INTERNATIONAL BUSINESS MA...

1. A computer program product for managing tracks in a storage in a cache accessed by a plurality of processors, the computer program product comprising a computer readable storage medium having computer readable program code embodied therein that when executed performs operations, the operations comprising:indicating tracks in the storage stored in the cache in lists, wherein there is one list for each of the plurality of processors, wherein each of the processors is dedicated to processing tracks indicated in one of the lists, wherein each of the processors processes the list for which that processor is dedicated to process the tracks in the cache indicated on the list, wherein each of the lists includes track identifiers of tracks in the cache, wherein a track identifier comprises at least one of a track address or a cache control block index for the track;
determining one of the lists from which to select a track of the tracks in the cache indicated in the determined list to demote; and
demoting a track identified by a track identifier of the selected track from the cache.

US Pat. No. 10,114,752

DETECTING CACHE CONFLICTS BY UTILIZING LOGICAL ADDRESS COMPARISONS IN A TRANSACTIONAL MEMORY

International Business Ma...

1. A computer system for determining whether to abort or continue a transaction based on logical addresses that map to a same real memory addresses, comprising:a memory; and
a first processor in communication with the memory, the first processor having a dynamic address translation mechanism for translating logical addresses into real memory addresses, wherein the computer system is configured to perform a method comprising:
assigning one or more transactions spawning from one or multiple programs executing on one or multiple processors to a shared transactional space, wherein the shared transactional space comprises a plurality of real addresses mapped to a plurality of logical addresses from the one or more transactions;
in response to receiving, by the first processor, a first memory access operation of a first transaction executing in a first logical address space, comparing a logical address of the first memory access operation to a logical address of a second memory access operation of a currently executing transaction of a second logical address space, wherein the logical address of the first memory access operation and the logical address of the second memory access operation map to a real address in the shared transactional space;
performing cross interrogate conflict detection for a logical address based on a translation table entry comprising:
referencing a real address corresponding to the logical address from the translation table entry based on the translation table entry indicating that a common logical to real translation exists for the shared transactional space;
transmitting the logical address and the corresponding real address of the XI conflict request to transaction tables of all threads of the first processor by an XI bus;
recognizing a conflict when the logical address of the XI request matches a logical address in a logical address space of an executing thread of the first processor; and
using the transmitted real address of the XI conflict request and cache coherency to determine the conflict if the logical address of the XI request is not within the range of the shared transactional space; and
based on the logical address of the first memory access operation matching the logical address of the second memory access operation of the currently executing transaction, aborting the first transaction and continuing the second memory access operation of the currently executing transaction.

US Pat. No. 10,114,749

CACHE MEMORY SYSTEM AND METHOD FOR ACCESSING CACHE LINE

HUAWEI TECHNOLOGIES CO., ...

1. A cache memory system, comprising:multiple upper level caches, wherein each upper level cache comprises multiple cache lines; and
a current level cache comprising an exclusive tag random access memory (Exclusive Tag RAM) and an inclusive tag random access memory (Inclusive Tag RAM), wherein the Exclusive Tag RAM is configured to preferentially store an index address of a first cache line that is in each upper level cache and whose status is unique dirty (UD), wherein the Inclusive Tag RAM is configured to store an index address of a second cache line that is in each upper level cache and whose status is unique clean (UC), shared clean (SC), or shared dirty (SD), and wherein data of the second cache line is backed up and stored in the current level cache.

US Pat. No. 10,114,748

DISTRIBUTED RESERVATION BASED COHERENCY PROTOCOL

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

1. A method of operating a cache-coherent computing system comprising:storing first state information corresponding to a first reservation for a first exclusive access to a first memory address requested by a first thread executing on a first processor of a first plurality of processors, the first state information including a proxy monitor indicator and an exclusive-write-ready indicator;
maintaining a set state of the proxy monitor indicator and a reset state of the exclusive-write-ready indicator until receiving an atomic response transaction associated with a successful colliding access of the first memory address or until detecting selection for issuance of the first exclusive access; and
transmitting an output atomic response transaction indicating a status of the first reservation to a coherency interconnection in response to issuance of the first exclusive access to the coherency interconnection,
wherein the output atomic response transaction is based on the first state information.

US Pat. No. 10,114,747

SYSTEMS AND METHODS FOR PERFORMING OPERATIONS ON MEMORY OF A COMPUTING DEVICE

Lenovo Enterprise Solutio...

1. A method comprising:storing an update image data on a first memory of a computing device, wherein the update image data comprises data for updating a second memory on a firmware of the computing device;
triggering an update mode of a serial peripheral interface (SPI) memory of the firmware based on an input/output (I/O) write operation at the second memory;
trapping the I/O write at a first register of the computing device when the update mode is triggered;
in response to trapping the input/output write, stopping the I/O write, switching to a system management mode (SMM), and invoking a system management interrupt (SMI) handler to determine the update mode based on the I/O write data trapped in the first register the computing device;
retrieving, via the SMI handler of the computing device, the update image data from the first memory;
determining, via the SMI handler, whether the update image data is valid; and
in response to determining that the update image data is valid, updating the second memory on the firmware of the computing device based on the retrieved update image data, and
wherein the update image data comprises operations data for performing one or more operations on the second memory on the firmware of the computing device, the second memory being read only memory (ROM) of a baseboard management controller (BMC).

US Pat. No. 10,114,746

NONVOLATILE STORAGE USING LOW LATENCY AND HIGH LATENCY MEMORY

Micron Technology, Inc., ...

1. An apparatus comprising:a first memory having a first read latency, wherein a first portion of a sequence of instructions and a size of the first portion is stored at the first memory; and
a second memory having a second read latency larger than the first read latency, wherein a second portion of the sequence of instructions is stored at the second memory and the size of the first portion and a size of the second portion are periodically adjusted by a memory controller based, at least in part, on the size of the first portion stored in the first memory, wherein the sequence of instructions follows a branch instruction stored at the second memory, wherein a request for each of the first portion of the sequence of instructions and the second portion of the sequence of instructions is sent without delay responsive to a branch of the branch instruction being taken, wherein the size of the first portion of the sequence of instructions is based, at least in part, on a ratio between latency in accessing the second memory and a latency in accessing the first memory, wherein the first and second portions of the sequence of instructions are written to the first and second memory, respectively, in an interleaving manner based on a write latency of the first memory.

US Pat. No. 10,114,745

ASSISTED GARBAGE COLLECTION IN A VIRTUAL MACHINE

Red Hat, Inc., Raleigh, ...

1. A method comprising:receiving, by a processing device of virtual machine, bytecode comprising a bytecode object and a garbage collection descriptor associated with the bytecode object, the garbage collection descriptor comprising an identifier of a garbage collection rule stored in a garbage collection rule database, wherein the garbage collection rule database stores a plurality of garbage collection rules specifying garbage collections to be performed on bytecode objects;
responsive to determining that the garbage collection descriptor indicates a first type of garbage collection in view of the garbage collection rule associated with the identifier in the garbage collection descriptor, storing the bytecode object in a first region of a memory associated with the processing device, wherein the first region is utilized for storing a first set of bytecode objects that have persisted for fewer than a determined number of rounds of garbage collection operations;
responsive to determining that the garbage collection descriptor indicates a second type of garbage collection in view of the garbage collection rule associated with the identifier in the garbage collection descriptor, storing the bytecode object directly in a second region of the memory associated with the processing device bypassing the first region, wherein the second region is utilized for storing a second set of bytecode objects that have persisted for at least the determined number of rounds of garbage collection operations in the first region;
responsive to determining that the garbage collection descriptor indicates a third type of garbage collection in view of the garbage collection rule associated with the identifier in the garbage collection descriptor, storing the bytecode object directly in a third region of the memory associated with the processing device bypassing the first region and second region, wherein the third region is to store a third set of bytecode objects until the third set of bytecode objects are destructed responsive to a class, associated with each of the third set of bytecode objects, being unloaded from the virtual machine; and
performing the garbage collection operation on the bytecode object in accordance with the garbage collection descriptor.

US Pat. No. 10,114,742

EFFICIENT BUFFER ALLOCATION FOR NAND WRITE-PATH SYSTEM

SK Hynix Inc., Gyeonggi-...

1. A system, comprising:a non-volatile memory comprising a group of solid state storage cells;
a memory controller coupled with the non-volatile memory, wherein the memory controller is configured to:
receive a first write data destined for a first solid state storage channel and a second write data destined for a second solid state storage channel, wherein the first solid state storage channel is different than the second solid state storage channel;
chop the first write data using at least a chopping factor in order to obtain (1) a first piece of chopped write data destined for the first solid state storage channel and (2) a second piece of chopped write data destined for the first solid state storage channel, wherein the first piece of chopping write data is addressed prior to the second piece of chopped write data;
chop the second write data using at least the chopping factor in order to obtain (1) a third piece of chopped write data destined for the second solid state storage channel and (2) a fourth piece of chopped write data destined for the second solid state storage channel, wherein the third piece of chopped write data is addressed prior to the fourth piece of chopped write data;
transfer the first piece of chopped write data to a write-path system (“WRP”);
store, in a first channel buffer in the WRP, the first piece of chopped write data, wherein the first channel buffer is a same size as the first piece of chopped write data;
after transferring the first piece of chopped write data, transfer the third piece of chopped write data to the WRP;
store, in a second channel buffer in the WRP, the third piece of chopped write data, wherein the second channel buffer is a same size as the third piece of chopped write data;
after transferring the third piece of chopped write data, transfer the second piece of chopped write data to the WRP;
store, in the first channel buffer in the WRP, the second piece of chopped write data;
after transferring the second piece of chopped write data, transfer the fourth piece of chopped write data to the WRP; and
store, in the second channel buffer in the WRP, the fourth piece of chopped write data.

US Pat. No. 10,114,740

MEMORY MANAGEMENT TECHNIQUES

Microsoft Technology Lice...

1. A computing device, the computing device comprising:at least one memory and at least one processor, the at least one memory and the at least one processor being respectively configured to store and execute instructions, including instructions for performing operations, the operations including:
allocating space in the at least one memory to a process executing on the computing device;
receiving an instruction from the process that:
data stored in at least a portion of the allocated space is to be discarded,
the data stored in at least the portion of the allocated space is to be retained, or
the data stored in at least the portion of the allocated space is available to be potentially discarded;
retaining or discarding the data based at least in part on the instruction and on memory usage for the computing device, wherein the instruction is based at least in part on whether the process is capable of regenerating the data.

US Pat. No. 10,114,736

VIRTUAL SERVICE DATA SET GENERATION

CA, Inc., Islandia, NY (...

1. A method comprising:instantiating a virtual service from a service model, wherein the virtual service is operable to receive requests intended for a particular one of a plurality of software components in a system and generate simulated responses of the particular software component based on a service model modeling responses of the particular software component;
receiving, at the virtual service, a particular request from another software component intended for the particular software component, wherein the particular request is a particular type and is redirected to the virtual service;
identifying a size request by a testing system, wherein the size request corresponds to the particular request, the size request indicates a first number of records to be included in a data set for inclusion in a simulated response of the virtual service to the particular request, the first number of records is different than a second number of records defined in the service model to be included in responses to requests of the particular type;
generating the simulated response at the virtual service based on the size request and the service model, wherein generating the simulated response comprises generating the data set to include the first number of records; and
sending the simulated response to the other software component in response to the particular request, wherein the simulated response comprises the data set.

US Pat. No. 10,114,733

SYSTEM AND METHOD FOR AUTOMATED TESTING OF USER INTERFACE SOFTWARE FOR VISUAL RESPONSIVENESS

Cadence Design Systems, I...

1. A system for testing user interface software for time lag in actuating a visual prompt responsive to user manipulation of a user input device, the system comprising:a display unit defining a canvas for displaying image frames;
a root capturing unit executable to capture user actuation of the user input device as at least one root event at a root software level, an operating system operating at the root software level, each root event being captured as a series of time-displaced samples of input device actuation;
a canvas capturing unit executable to capture processing of the root event by the user interface software as a canvas response at a canvas software level, the user interface software operating at the canvas software level for user interaction with an application, the canvas response being captured as a series of time-displaced image frames; and,
a test analysis unit coupled to said root and canvas capturing units, said test analysis unit executable to determine a parametric difference between corresponding ones of the root events and canvas responses, and to determine a degree of visual responsiveness for the user interface software based thereon, said test analysis unit thereby discriminating portions of the time lag introduced at the canvas software level from portions of the time lag introduced at the root software level.

US Pat. No. 10,114,732

DEBUGGING IN-CLOUD DISTRIBUTED CODE IN LIVE LOAD ENVIRONMENT

CA, INC., New York, NY (...

1. A remote debugging method comprising:configuring a transactions traffic distributor in a networked system to distinguish between production traffic and development traffic and to route at least a first portion of production traffic received by the distributor to an associated first production server;
configuring the transactions traffic distributor to route at least a respective portion of development traffic received by the distributor to an associated second production server, the second production server being configured to perform remotely controlled debugging on code of the at least respective portion of development traffic routed thereto;
configuring a development server remote from the first and second production servers and operatively coupled to the networked system to route transaction requests of at least one under-development process to the transactions traffic distributor in the form of development traffic; and
configuring the development server to provide debugging instructions to, and receive debugging results from the second production server.

US Pat. No. 10,114,731

INCLUDING KERNEL OBJECT INFORMATION IN A USER DUMP

EMC IP Holding Company LL...

1. A method of identifying a software issue in a data storage system, comprising:storing selected operating system kernel data in a memory location of the data storage system;
analyzing the stored operating system kernel data in the memory location identifying a root cause of the software issue from the analyzed operating system kernel data; and
transmitting an alert to a user after the root cause is identified, the alert identifying the root cause to the user;
wherein the method further comprises:
performing, after storing the selected operating system kernel data in the memory location, a memory dump operation configured to output memory dump data of a software process associated with the data storage system;
storing memory dump data in another memory location; and
analyzing the memory dump data, analysis of the memory dump data and the operating system kernel data providing the identification of the root cause of the software issue;
wherein the selected operating system kernel data is stored at a time selected based on a number of available handles in a thread of the data storage system; and
wherein the method further comprises:
comparing the number of available handles to a selected minimum handle threshold level of available handles for the thread;
when the number of available handles is below the selected minimum handle threshold level, generating a collection thread to collect file name data for each file handle from the operating system kernel;
storing the file name data in the memory location; and
initiating the memory dump operation.

US Pat. No. 10,114,730

DYNAMIC INSTRUMENTATION BASED ON DETECTED ERRORS

International Business Ma...

1. A method for dynamically instrumenting a program at runtime, the method comprising:identifying, by a processor, a sequence of memory related operations from an instruction stream, wherein the sequence comprises: a plurality of memory related operations that each reference a first address in memory, including a first memory related operation and a second memory related operation, wherein the second memory related operation is only able to execute subsequent to the first memory related operation;
instrumenting, by the processor, the first memory related operation;
detecting, by the processor, an error at the first memory related operation based on the instrumentation of the first memory related operation;
responsive to detecting the error at the first memory related operation, instrumenting, by the processor, at least the second memory related operation based on the presence of the second memory related operation within the identified sequence.

US Pat. No. 10,114,729

PERFORMANCE ANALYSIS USING PERFORMANCE COUNTERS AND TRACE LOGIC

QUALCOMM Incorporated, S...

1. A method of analyzing performance of a processing system, the method comprising:identifying a first transaction as a transaction to be monitored, at a first trace point of the processing system, based on detecting the first transaction at least a threshold number of times at the first trace point, wherein detecting the first transaction at least the threshold number of times at the first trace point comprises counting, in a performance counter provided at the first trace point, a number of times the first transaction is detected at the first trace point and comparing the number of times the first transaction is detected, to a threshold;
associating a first trace tag identifier with the first transaction, at the first trace point;
identifying the first transaction at one or more other trace points of the processing system based on the first trace tag identifier;
determining time stamps at which the first transaction is identified at the first trace point and the one or more other trace points; and
determining trace information for the first transaction from the time stamps.

US Pat. No. 10,114,728

DYNAMIC FUNCTION-LEVEL HARDWARE PERFORMANCE PROFILING FOR APPLICATION PERFORMANCE ANALYSIS

NEC Corporation, (JP)

1. A system with a computer implementation of performance profiling for performance analysis, the system comprising:a processor coupled to a non-transitory computer-readable storage medium, the processor being configured for:
inserting probe points, using an application instrumentation, into a target application program so that at run-time, performance profiling can be done by enabling those probe points;
profiling, using an application dynamic tracing, with selected targets and overhead budget, the target application performance during its execution; and
analyzing, using a performance data analyzer, the application performance data output by the application dynamic tracing;
wherein the application instrumentation, application dynamic tracing and performance data analyzer are configured to cooperate to selectively enable and disable dynamic function-level hardware performance profiling of hardware performance events and association of the hardware performance events with function calls for application performance analysis at a plurality of times on any subset of application functions and any subset of the hardware performance events;
wherein a profiling scope is specified by inputting the selected targets and the profiling is configured to begin upon execution of the target application or on demand by a user or an external process at any selected time during the execution of the target application, the selected targets including interested hardware performance events and interested application functions;
wherein the overhead budget is specified by a target overhead limit;
wherein the profiling ends after a specified time interval or upon termination of the target application;
wherein the application dynamic tracing comprises a function tracing for running the target application processes and threads through the probe points of the application instrumentation;
wherein the tracing function generates an index to a shared data table using a process or thread identification and a function identification; and
wherein the tracing function, if the probe point is for a beginning of the application function, uses available hardware performance counters to read current values of selected hardware performance events, and stores those values, and wherein the tracing function, if the probe point is for an ending of the application function, uses available hardware performance counters to read current values of selected hardware performance events, subtracting them by corresponding beginning values stored earlier for the same function of the same thread, and updating an event value attribute for each selected hardware event with a calculated value.

US Pat. No. 10,114,727

DISPLAY WINDOW CONTEXTUAL VISUALIZATION FOR APPLICATION PERFORMANCE MONITORING

CA, Inc., New York, NY (...

1. A method for displaying application performance data, said method comprising:receiving, by a processor, performance data collected from an application during display of a first display window by the application;
receiving, by the processor, performance data collected from the application during display of a second display window by the application;
generating, by the processor based, at least in part, on the performance data collected from the application during display of the first and second display windows by the application, a record in a non-transitory machine-readable storage medium, the record including a performance data field containing a portion of the performance data collected from the application during display of the first and second display windows by the application and a display window identifier (ID) field containing a display window ID value; and
simultaneously, providing, by the processor, for display on a display device,
an image of the first display window that includes a first displayable performance indicator that is visually modifiable to correlate to variations in the performance data collected from the application during display of the first display window by the application; and
an image of the second display window that includes a second displayable performance indicator that is visually modifiable to correlate to variations in the performance data collected from the application during display of the second display window by the application.

US Pat. No. 10,114,725

INFORMATION PROCESSING APPARATUS, METHOD, AND COMPUTER READABLE MEDIUM

FUJITSU LIMITED, Kawasak...

1. An information processing apparatus configured to execute a program to generate events, the information processing apparatus comprising:a counter configured to count a number of events generated when a program is executed by the information processing apparatus, the counter not having a function of outputting an interruption signal;
a memory; and
a processor coupled to the memory and configured to:
acquire, at a regular time interval, an integrated value of count values and first information, the integrated value of count values being acquired by the counter by counting the number of the events, and the first information being operation information that includes identification information of the program at a timing of acquiring the integrated value or information of hardware that is used to execute the program,
store the integrated value and the first information in a first area of the memory,
when the integrated value acquired at a first timing of the regular time interval is lower than a threshold and the integrated value acquired at a second timing which is a next timing of the first timing of the regular time interval is higher than the threshold, determine a first difference between the threshold and the integrated value acquired at the first timing and a second difference between the threshold and the integrated value acquired at the second timing,
select, when the first difference is less than the second difference, the first information acquired at the first timing, and select, when the second difference is less than the first difference, the first information acquired at the second timing, and
store the selected first information in a second area of the memory.

US Pat. No. 10,114,724

TECHNIQUES FOR REAL TIME SERVER TESTING IN A PRODUCTION ENVIRONMENT

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

1. A computer-implemented method, comprising:receiving a plurality of requests for content by a content management server, the content management server deployed to a production environment and the plurality of requests received from a plurality of content client servers, each content client server being in communication with a plurality of client devices;
receiving, by a test controller executing on the content management server, a request to initiate a test, the test associated with a plurality of message attributes including at least one of a device identifier, content client identifier, and content identifier;
identifying, by the test controller, a subset of requests for content that match the plurality of message attributes, the subset of requests for content being identified as the plurality of requests are received;
processing, by the content management server, each request from the subset of requests;
responsive to processing of at least one of the subset of messages, initiating the test;
retrieving a plurality of request traces, each request trace associated with a request from the subset of requests;
comparing at least one test condition associated with a request test to each request trace to determine a plurality of test results;
determining that a threshold number of requests from the subset of requests have been processed, the threshold number of requests associated with the request test; and
aggregating the plurality of test results to determine an aggregate test result for the request test.

US Pat. No. 10,114,723

SYNCHRONOUS INPUT/OUTPUT MEASUREMENT DATA

INTERNATIONAL BUSINESS MA...

1. A method for acquiring measurement data of a synchronous input/output (I/O) link between an operating system and a recipient, the operating system and the recipient executing on a processor coupled to a memory, the method comprising:monitoring operating system usage of synchronous I/O commands on the synchronous I/O link including identifying a plurality of operating systems using the synchronous I/O link,
wherein the plurality of operating systems includes the operating system,
wherein each of a plurality of operating systems is communicatively coupled to peripheral component interconnect function measurement block and corresponds to a separate logical partition of a synchronous system;
storing the operating system usage in a measurement block as the measurement data,
wherein the measurement block is accessed by the operating system to determine that the measurement data is acquired; and
aggregating the operating system usage from the measurement block into a link measurement block,
wherein the link measurement block comprises a peripheral component interconnect function measurement block for the synchronous I/O link that directly measures credentials of the synchronous I/O link by accumulating the measurement data related to each virtual function of each of the plurality of operating systems and the measurement data includes successful commands, processing time, local rejects, remote errors, bytes written, and bytes read for the synchronous I/O link.

US Pat. No. 10,114,722

TEST OF THE EXECUTION OF WORKLOADS IN A COMPUTING SYSTEM

INTERNATIONAL BUSINESS MA...

1. A method for servicing workloads, the method comprising:providing a computing environment for servicing the workloads, the computing environment including a production computing environment and a common staging computing environment, the common staging computing environment comprising multiple staging computing machines shared by a plurality of users of the computing environment;
providing a definition of one or more workloads for each one of the plurality of users of the computing environment, the definition of each workload comprising a plurality of indications, the plurality of indications comprising an indication of one or more work units to be executed, an indication of the production computing machine of a production computing environment of the corresponding user for executing each work unit, and an indication of an execution mode of the workload setting the workload as a production workload to be executed in a production mode or as a test workload to be executed in a test mode;
identifying from the plurality of indications of the definition of a workload, the production computing machine for executing each work unit of the workload, and based on the plurality of indications of the definition of the workload indicating that the workload is to be executed as a test workload in the test mode, processing each work unit of the test workload by:
automatically mapping, by a transposer of the computing environment, the production computing machine of the work unit of the test workload to a staging computing machine of the multiple staging computing machines shared by the plurality of users, the mapping considering one or more computing resource characteristics of the production computing machine, and the transposer controlling the multiple staging computing machines shared by the plurality of users, the executing including the mapped staging computing machine accessing in read-only mode a production database used by the production computing machine of the production computing environment when the workload is set as the production workload;
executing the work unit of the test workload on the mapped staging computing machine of the multiple staging computing machines shared by the plurality of users; and
determining a test result of the executing of the test workload, and based thereon, verifying whether the executing of the test workload behaves correctly on the mapped staging computing machine of the multiple staging computing machines shared by the plurality of users; and
based on the test workload behaving correctly on the mapped staging computing machine of the multiple staging computing machines shared by the plurality of users, resetting, by a scheduler of the computing environment, the indication of the execution mode of the workload to the production workload, and executing the workload as the production workload in the production mode on the production computing machine of the production computing environment, wherein the test workload behaving correctly means execution of the test workload is successful for a predetermined number of consecutive times.

US Pat. No. 10,114,720

ESTIMATING POWER USAGE IN A COMPUTING ENVIRONMENT

International Business Ma...

1. A method for estimating power usage in a computing environment using differing manufacturers of hardware and software executed on the hardware, by a processor device, comprising:automatically, and with no input from a user, detecting hardware configuration information by comparing detected device characteristics and checking the detected characteristics against a library of device power models by use of a software agent in lieu of using an external power measurement device, the library of device power models comprising known minimum and maximum electrical power consumption rates for each device in the library, and including as input to a device power model for a given device in the library at least: an amount of memory currently in use, a number of physical processors and associated current utilization levels, an amount of storage contained or attached to the given device, and a current level of read and write activity on any of the contained or attached storage; wherein the detected hardware configuration information is translated into power consumption information for implementing one of a plurality of power estimation models for measuring electrical power consumption and utilization, the one of the plurality of power estimation models implemented by transmitting the power consumption information to a management application which reads the power consumption information provided by the software agent as if the power consumption information were an actual measurement of a particular data metric;
storing the power consumption information within a storage device in the computing environment, wherein the power consumption information is transmitted from the storage device to the management application;
optimizing, through the management application, the electrical power consumption and utilization of detected hardware within the computing environment associated with the detected hardware configuration information to increase an efficiency of the electrical power consumption and utilization; and
integrating a minimum and a maximum power usage and utilization of a plurality of hardware components into a linear power model.

US Pat. No. 10,114,719

ESTIMATING POWER USAGE IN A COMPUTING ENVIRONMENT

International Business Ma...

1. A system for estimating power usage in a computing environment using differing manufacturers of hardware and software executed on the hardware, comprising:a processor device, operable in the computing environment, wherein the at least one processor device:
automatically, and with no input from a user, detects hardware configuration information by comparing detected device characteristics and checking the detected characteristics against a library of device power models by use of a software agent in lieu of using an external power measurement device, the library of device power models comprising known minimum and maximum electrical power consumption rates for each device in the library, and including as input to a device power model for a given device in the library at least: an amount of memory currently in use, a number of physical processors and associated current utilization levels, an amount of storage contained or attached to the given device, and a current level of read and write activity on any of the contained or attached storage; wherein the detected hardware configuration information is translated into power consumption information for implementing one of a plurality of power estimation models for measuring electrical power consumption and utilization, the one of the plurality of power estimation models implemented by transmitting the power consumption information to a management application which reads the power consumption information provided by the software agent as if the power consumption information were an actual measurement of a particular data metric;
stores the power consumption information within a storage device in the computing environment, wherein the power consumption information is transmitted from the storage device to the management application;
optimizes, through the management application, the electrical power consumption and utilization of detected hardware within the computing environment associated with the detected hardware configuration information to increase an efficiency of the electrical power consumption and utilization; and
integrates a minimum and a maximum power usage and utilization of a plurality of hardware components into a linear power model.

US Pat. No. 10,114,718

PREVENTION OF EVENT FLOODING

International Business Ma...

9. A non-transitory computer-readable storage medium storing program code executed by a plurality of processors to perform a method comprising:responsive to receiving monitored activity data, analysing the monitored activity data to identify an event value corresponding to an event;
responsive to a identifying the event value, identifying a set of threshold values and determining whether the event value has met a first threshold value of the set of threshold values;
responsive to determining that the event value has met the first threshold value, determining if the first threshold value is equal a second threshold value met by a previous event; and
responsive to determining that the first threshold value is equal the second threshold value, disregarding the event.

US Pat. No. 10,114,717

SYSTEM AND METHOD FOR UTILIZING MACHINE-READABLE CODES FOR TESTING A COMMUNICATION NETWORK

Fluke Corporation, Evere...

1. A testing device comprising:a testing unit to perform test procedures on network elements of a communication network;
a machine-readable code reader to read a machine-readable code associated with a first network element of the communication network; and
a computer configured to:
determine a component type associated with the machine-readable code read by the machine-readable code reader;
select, from a plurality of configuration files, a configuration file based on the component type determined;
configure the testing unit for a test procedure using the configuration file selected;
instruct the testing unit to perform the test procedure on the first network element;
determine a location of a second network element relative to the first network element based on data associated with the machine-readable code for the first network element; and
provide the location of the second network element to a user of the testing device.

US Pat. No. 10,114,716

VIRTUAL FAILURE DOMAINS FOR STORAGE SYSTEMS

International Business Ma...

1. A method comprising:collecting, by one or more processors, information that indicates one or more failure correlations for disks in a storage system;
defining, by one or more processors, each disk as a vector of parameters associated with the respective disk, wherein the parameters are based on the information that indicates one or more failure correlations, and wherein the parameters for each respective disk include the respective disk's physical location inside the storage system, the respective disk's manufacture data, and the respective disk's performance/usage parameters, wherein the performance/usage parameters include a number of head crashes and a number of bad sectors;
separating, by one or more processors, the disks into a plurality of virtual failure domains based on the parameters of their corresponding vectors;
determining, by one or more processors, that all data objects of a set of redundant data objects are included in a first virtual failure domain; and
responsive to determining that all data objects of the set of redundant data objects are included in the first virtual failure domain, migrating, by one or more processors, at least one data object of the set of redundant data objects from a first disk in the first virtual failure domain to a second disk in a second virtual failure domain.

US Pat. No. 10,114,713

SYSTEMS AND METHODS FOR PREVENTING SPLIT-BRAIN SCENARIOS IN HIGH-AVAILABILITY CLUSTERS

Juniper Networks, Inc., ...

1. A computer-implemented method comprising:detecting, at a standby node of a high-availability cluster, a partitioning event that isolates the standby node from an active node of the high-availability cluster;
after the partitioning event has occurred:
broadcasting, from a health-status server, a cluster-health message to at least the standby node, wherein:
the health-status server is separate and distinct from the standby node and the active node;
the cluster-health message comprises at least a health status of the active node;
the health status of the active node is based at least in part on whether the health-status server received a node-health message from the active node after the partitioning event occurred;
reacting, at the standby node, to the partitioning event such that the partitioning event does not result in a split-brain scenario within the high-availability cluster by performing, based at least in part on whether the standby node received the cluster-health message from the health-status server, at least one of:
leaving the high-availability cluster;
assuming at least one computing task assigned to the active node.

US Pat. No. 10,114,712

FAILURE DETECTION VIA IMPLICIT LEASES IN DISTRIBUTED COMPUTING SYSTEMS

Microsoft Technology Lice...

1. A computing device, comprising:a processor; and
a memory containing instructions executable by the processor to cause the processor to perform a process including:
receiving an arbitration request from a first node in a computing system having a plurality of nodes interconnected by a computer network, each of the nodes having a logic relationship with another node in the computing system, the arbitration request indicating that the first node is unable to establish a lease with a second node for a predetermined threshold period, wherein the second node is logically related to the first node according to the logic relationship and is a default monitor for the first node for the lease; and
in response to receiving the arbitration request from the first node, providing a neutral arbitration result to the first node within an arbitration timeout period, the neutral arbitration result allowing the first node to continue to operate without causing the second node to terminate, thereby allowing both the first and second nodes to continue to operate despite that the first node is unable to establish the lease with the second node.

US Pat. No. 10,114,709

BLOCK STORAGE BY DECOUPLING ORDERING FROM DURABILITY

Microsoft Technology Lice...

1. A method comprising:receiving multiple write commands having corresponding write data;
receiving multiple flush commands, the multiple flush commands defining corresponding flush epochs;
issuing the write data to a persistent log on a physical storage device with consistency data;
acknowledging an individual flush command that defines an individual flush epoch before confirming that at least some write data for the individual flush epoch has committed on the physical storage device; and
after a crash, recovering the write data on the physical storage device to a consistent state using the consistency data.

US Pat. No. 10,114,708

AUTOMATIC LOG COLLECTION FOR AN AUTOMATED DATA STORAGE LIBRARY

INTERNATIONAL BUSINESS MA...

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

US Pat. No. 10,114,707

CROSS SITE RECOVERY OF A VM

EMC IP Holding Company LL...

1. A system for restoring a virtual machine, comprising:a communication interface configured to:
receive an indication to restore the virtual machine of a primary site at a remote site, wherein the virtual machine of the primary site is one of one or more virtual machines of the primary site available to be restored at the remote site, wherein the virtual machine of the primary site is to be restored using a backup copy of the primary site virtual machine that is stored in a backup storage at the remote site, wherein the backup copy of the primary site virtual machine was generated using a virtual appliance of the primary site directly accessing data of the virtual machine of the primary site from a data storage of the primary site without accessing the virtual machine itself, wherein the backup copy of the primary site virtual machine was replicated from the backup storage of the primary site to the backup storage of the remote site, wherein the backup storage of the primary site is configured to store one or more backup images of the one or more virtual machines of the primary site, wherein the data storage of the primary site is configured to store data of the one or more virtual machines of the primary site; and
a processor coupled with the communication interface and configured to:
determine a type of restoration site of the remote site; and
restore the primary site virtual machine to the remote site using a backup application of the remote site, wherein in response to receiving a communication from a central backup application, the backup application of the remote site is configured to restore the primary site virtual machine at the remote site using the backup copy of the primary site virtual machine that is stored in the backup storage at the remote site.

US Pat. No. 10,114,706

BACKUP AND RECOVERY OF RAW DISKS [RDM] IN VIRTUAL ENVIRONMENT USING SNAPSHOT TECHNOLOGY

EMC IP Holding Company LL...

1. A computer-implemented method comprising:receiving, by a virtual machine manager on a first computing device, a request for backup of a virtual disk of a virtual machine on the first computing device to a target storage device, the request originating from a second computing device, wherein the virtual machine is identified by a unique virtual machine identifier within the request, and wherein the virtual machine manager includes a backup application programming interface (API);
in response to receiving the request, determining, by the virtual machine manager using the backup API therein, an identifier for the virtual disk of the virtual machine to be backed up to the target storage device;
determining, by the virtual machine manager, a mapping of the identifier for the virtual disk to one or more portions of disk storage on a source storage device, wherein the virtual machine manager uses the backup API therein to communicate with a backup agent on the source storage device to determine the mapping of the identifier for the virtual disk to the one or more portions of disk storage on the source storage device, wherein determining the mapping of the identifier for the virtual disk to the one or more portions of disk storage includes requesting, by the virtual machine manager, a mapping of a raw virtual disk in the virtual disk to the one or more portions of disk storage from the source storage device, wherein the mapping of the raw virtual disk to the one or more portions of storage is defined by a raw disk mapping file, wherein the raw disk mapping is requested by the virtual machine manager from the source storage device;
triggering, by the virtual machine manager, transmission to the target storage device, the identifier for the virtual disk, the mapping of the identifier for the virtual disk to the one or more portions of disk storage, and data stored in the one or more portions of disk storage on the source storage device.

US Pat. No. 10,114,705

PRESENTING VIRTUAL MACHINE BACKUP FILES FOR BLOCK AND FILE LEVEL RESTORE

EMC IP Holding Company LL...

1. A computer-implemented method of providing virtual machine backup files for instant system restoration, comprising:setting up a kernel mode interceptor hook system object and a user mode redirector process;
presenting a backed up save set comprising a virtual disk in a backup system including a backup server computer and virtual machine targets;
creating a temporary container in a storage medium coupled to the backup server computer;
formatting the temporary container with a directory structure similar to that created for the virtual disk during backup;
receiving read operations (reads) to the backup save set intercepted by the kernel interceptor hook system object of the backup server computer,
redirecting, using the kernel mode redirector component, reads to the backup save set residing either on one of a deduplication backup platform or a network file system; and
servicing the read operations through a user mode read thread to use file transfer protocol (FTP) libraries to mount arbitrary disk images on defined operating system platforms to ensure availability of the backup save set without requiring file share protocols to access a remote virtual machine hard disk files and without changing the original backup save set format.

US Pat. No. 10,114,703

FLASH COPY FOR DISASTER RECOVERY (DR) TESTING

INTERNATIONAL BUSINESS MA...

1. A computer program product for disaster recovery (DR) testing, the computer program product comprising a computer readable storage device having program code embodied therewith, wherein the computer readable storage device is not a transitory signal per se, the program code being readable and/or executable by a hardware processor to:define, by the processor, a DR family, the DR family comprising one or more DR clusters accessible to a DR host and one or more production clusters accessible to a production host, wherein the DR host is configured to replicate data from the one or more production clusters to the one or more DR clusters;
create, by the processor, a backup copy of data stored to the one or more production clusters;
store, by the processor, the backup copy to the one or more DR clusters;
establish, by the processor, a time-zero in the DR family in response to a user enabling snapshot within the DR family;
create, by the processor, a snapshot of each backup copy stored to the one or more DR clusters, wherein each snapshot represents data stored to the one or more DR clusters at the time-zero;
share, by the processor, a point-in-time data consistency at the time-zero among all clusters within the DR family; and
perform, by the processor, DR testing using, in descending order of preference: a snapshot from a first cluster within the DR family, a snapshot accessed via the first cluster from a second cluster within the DR family when the first cluster does not include an up-to-date consistent snapshot, a backup copy from the first cluster, and a backup copy from the second cluster when the first cluster does not include an up-to-date consistent backup copy.

US Pat. No. 10,114,702

METHOD AND SYSTEM TO DISCOVER AND MANAGE DISTRIBUTED APPLICATIONS IN VIRTUALIZATION ENVIRONMENTS

International Business Ma...

1. A method for managing a plurality of computing machines, the method comprising:accessing a catalogue memory structure storing a plurality of component signatures for discovering corresponding software components and, for each of a plurality of software applications, an indication of one or more of the software components belonging to a software application and one or more connection signatures for detecting corresponding connections, each connection being a connection between at least two of the software components of the software application;
discovering one or more of the software components being instantiated in a software image of each computing machine according to corresponding component signatures;
detecting one or more of the connections each connection being established between at least two instantiated software components of different computing machines according to corresponding connection signatures;
associating each software image with a software deployment of the software application of each established connection of the software image;
receiving a restore command for restoring a target recovery point selected among a plurality of recovery points, each recovery point comprising snapshots of respective software images of one or more of the software deployments being directly or indirectly overlapped; and
restoring the target recovery point in response to the restore command by restoring the snapshots associated with the target recovery point on corresponding computing machines.

US Pat. No. 10,114,701

SPACE EFFICIENT CASCADING POINT IN TIME COPYING

INTERNATIONAL BUSINESS MA...

1. A computer program product stored on a non-transitory tangible computer readable storage medium for a space efficient cascading point-in-time copying of source data by creating a plurality of cascading point-in-time target copies, the target copies being created at different points in time, the computer program including code forphysically copying data from the source data to a repository to create a physical copy;
creating a data mapping that associates the physical copy with a most recent target copy of said plurality of cascading target point-in-time copies, the data mapping indicating shared mapping and non-shared mapping, the shared mapping indicating that an address of the physical copy in the repository, the repository not comprising a cache, is shared with at least one previously created target copy of said plurality of cascading point-in-time copies; wherein the source data includes a time stamp of when a data block of the source data was last modified or overwritten, and if the time stamp indicates the source data is older than a time of creation of a previous target volume which was created prior to the most recent target copy of a most recent target volume, the source data corresponds to logical copies in both the most recent target volume and the previous target volume and the data mapping indicates the source data as shared; otherwise, if the time stamp indicates the source data was modified more recently than the time of creation of the previous target volume which was created prior to the most recent target copy of the most recent target volume, the data mapping indicates the source data as non-shared;
receiving a request to perform a read operation on a logical copy of one target copy of said plurality of cascading target point-in-time copies;
in response to the request, directing the read operation to a corresponding address of the repository if the step of physically copying data from the source data was performed prior to the creation of the one target copy of said plurality of cascading target point-in-time copies, and directing the read operation to the logical copy of the one target copy of said plurality of cascading target point-in-time copies if the step of physically copying data from the source data was performed after the creation of the one target copy of said plurality of cascading target point-in-time copies; and
updating the data mapping of one or more target copies of said plurality of cascading target point-in-time copies that are older than a designated target copy of said plurality of cascading target point-in-time copies, so as to include information relating to the designated target copy;
wherein the data mapping comprises a leaf of a B-tree structure, and the B-tree structure includes inner nodes and one or more leaves, the inner nodes include information for assisting in searching the B-tree and the one or more leaves indicate the shared mapping and the non-shared mapping.

US Pat. No. 10,114,698

DETECTING AND RESPONDING TO DATA LOSS EVENTS IN A DISPERSED STORAGE NETWORK

INTERNATIONAL BUSINESS MA...

1. A method for execution by one or more processing modules of one or more computing devices of a dispersed storage network (DSN), the method comprises:scanning a plurality of distributed storage units to identify one or more compromised encoded data slices (EDSs) of a set of EDSs, wherein the set of EDSs represents a first data segment;
when one or more compromised EDSs of the set of EDSs is found, determining whether a decode threshold number of EDSs of the set of EDSs is available to recover the first data segment;
when a decode threshold number of EDSs of the set of EDSs is determined not to be available to recover the first data segment, determining whether the first data segment is involved in an indeterminate state of processing a storage function;
when the first data segment is involved in an indeterminate state of processing a storage function, waiting until the processing a storage function is complete; and
when the first data segment is not involved in an indeterminate state of processing a storage function, initiating a process to recover at least a portion of the first data segment.

US Pat. No. 10,114,697

LARGE OBJECT PARALLEL WRITING

International Business Ma...

1. A method comprises:partitioning, by a computing device of a dispersed storage network (DSN), a data object into a first partition and a second partition;
dispersed storage error encoding, by the computing device, the first partition into a first plurality of sets of encoded data slices and the second partition into a second plurality of sets of encoded data slices;
generating, by the computing device, a first segment allocation table (SAT) regarding storage of the first plurality of sets of encoded data slices in a first set of storage units of the DSN and a second SAT regarding storage of the second plurality of sets of encoded data slices in a second set of storage units of the DSN;
dispersed storage error encoding, by the computing device, the first SAT to produce a first set of SAT slices and the second SAT to produce a second set of SAT slices;
sending, by the computing device, the first plurality of sets of encoded data slices and the first set of SAT slices to the first set of storage units;
sending, by the computing device, the second plurality of sets of encoded data slices and the second set of SAT slices to the second set of storage units; and
generating, by the computing device, a third SAT regarding storage of the first and second sets of SAT slices in the first and second set of storage units.

US Pat. No. 10,114,696

TRACKING DATA ACCESS IN A DISPERSED STORAGE NETWORK

INTERNATIONAL BUSINESS MA...

1. A method for execution by a dispersed storage and task (DST) processing unit that includes a processor, the method comprises:receiving an access request from a first requesting entity via a network indicating a first original data object;
generating a first at least one read request for transmission to at least one storage unit to retrieve a plurality of encoded original data slices associated with the first original data object;
generating a first regenerated original data object by utilizing a decoding scheme on the plurality of encoded original data slices; and
generating a first transformed data object for transmission to the first requesting entity via the network by utilizing a transformation function on the first regenerated original data object based on a first entity identifier associated with the first requesting entity.

US Pat. No. 10,114,695

INFORMATION PROCESSING DEVICE, SEMICONDUCTOR DEVICE, AND MEMORY INSPECTION METHOD

FUJITSU LIMITED, Kawasak...

1. An information processing device comprising:a processor that executes processing of data; and
a memory module that includes a first memory in which a plurality of memory chips each which stores the data are mounted in layers, and a memory controller that controls the first memory, the memory controller:
inspects the data;
executes correction processing of the data when a single bit error is detected;
determines, when a single bit error is detected in a memory chip which is included in the plurality of memory chips and is mounted in a first layer of the layers, a first inspection area provided in another memory chip which is included in the plurality of memory chips and is mounted in another layer of the layers, based on a first location at which the single bit error occurs; and
executes first inspection of data in the first inspection area.

US Pat. No. 10,114,693

MEMORY SYSTEMS AND ELECTRONIC SYSTEMS PERFORMING AN ADAPTIVE ERROR CORRECTION OPERATION WITH PRE-CHECKED ERROR RATE, AND METHODS OF OPERATING THE MEMORY SYSTEMS

SK hynix Inc., Icheon-si...

1. A memory system comprising:a test vector generator configured to generate a test vector to be written into a memory device;
a data discrepancy checker configured to compare read data outputted from the memory device with the test vector to generate an information signal corresponding to a comparison between the read data and the test vector;
an error correction code (ECC) controller configured to perform an ECC encoding operation and an ECC decoding operation according to any one among a plurality of ECC levels based on a control signal; and
a memory controller configured to control the test vector generator, the data discrepancy checker and the ECC controller,
wherein the memory controller transmits the control signal corresponding to an error rate of the memory device to the ECC controller, based on the information signal generated by the data discrepancy checker.

US Pat. No. 10,114,690

MULTI-DIE STATUS MODE FOR NON-VOLATILE STORAGE

SanDisk Technologies LLC,...

1. An apparatus comprising:a plurality of memory die; and
a memory controller configured to:
broadcast a first status command to the plurality of memory die;
receive a first status response concurrently from the plurality of memory die based on the first status command;
broadcast a second status command to the plurality of memory die;
receive a second status response concurrently from the plurality of memory die based on the second status command;
compare responses to the first status command to responses to the second status command to detect one or more memory die that no longer function properly and failed to respond to the status commands; and
send a reset command to the one or more memory die that failed to respond to the status commands to restore functionality to the one or more memory die.

US Pat. No. 10,114,689

DYNAMIC PLAYLIST GENERATION

Amazon Technologies, Inc....

12. A non-transitory computer-readable storage medium having stored thereon executable instructions that, as a result of being executed by one or more processors of a computer system, cause the computer system to:detect that a first media stream has ceased being received for a threshold amount of time, the first media stream corresponding to a first playlist comprising a first sequence of references, the first sequence of references corresponding to respective segments of the first media stream, the first playlist associated with an identifier usable at least in part to obtain a copy of the first playlist;
determine a second playlist associated with the identifier that comprises a second sequence of references, wherein the second sequence of references:
switches from a first reference corresponding to a segment of the first media stream to a second reference corresponding to a segment of a second media stream; and
includes a reference to a default segment that precedes the second reference of the second media stream, the default segment having a duration determined based at least in part on a time gap between the segment of the first media stream and the segment of the second media stream; and
allow a copy of the second playlist to be obtained at least in part by using the identifier.

US Pat. No. 10,114,688

SYSTEM AND METHOD FOR PERIPHERAL BUS DEVICE FAILURE MANAGEMENT

Dell Products L.P., Roun...

1. A method for managing peripheral device failures, comprising:defining, at a management module, a first cluster of redundant bus devices and a second cluster of redundant bus devices, wherein each cluster contains an active bus device and one or more passive bus devices, wherein the bus devices in the first cluster are different types of bus devices than those in the second cluster;
detecting, at a processor of a peripheral bus, a failure of a first bus device at a downstream port from the processor, wherein the downstream port is populated by the first bus device, wherein the processor is communicatively coupled at an upstream port to a root complex and the processor is configured to isolate the failure of the first bus device from the root complex, wherein the processor further includes an arbitration entity communicatively coupled to and located downstream from the root complex, the arbitration entity configured to present the first bus device upstream to the root complex, the arbitration entity further associated with the management module, and wherein the first bus device is a member of the first cluster; and
responsive to detecting the failure at the management module:
suspending communication of data to the first bus device;
receiving information regarding a second bus device, wherein the second bus device is a member of the first cluster and redundant of the first bus device;
transitioning the second bus device from a passive state to an active state; and
assigning the second bus device to the downstream port.

US Pat. No. 10,114,686

REDUCING SIZE OF DIAGNOSTIC DATA DOWNLOADS

International Business Ma...

1. A method for reducing size of diagnostic data downloads, comprising:reading a format and a content of a diagnostic data file;
applying pre-defined priority rules to the diagnostic data file utilizing the format and the content;
assigning a priority level to the diagnostic data file based on an ability of the diagnostic data file to diagnose a failure as determined by the pre-defined priority rules;
wherein the assigning of the priority level to the diagnostic data file includes utilizing multiple levels of granularity based on one or more data elements, wherein the data elements include a structure of a file type, wherein at least a first failure data capture (FFDC) file has a higher priority level than a log file;
wherein the pre-defined priority rules prioritize the diagnostic data file by a file type, a format of the diagnostic data file, a content of the diagnostic data file, and a closeness of data elements in the diagnostic data file to a failure point with respect to a time, wherein data elements within 10 seconds of the failure point have a highest priority level;
wherein data elements of the diagnostic data file are prioritized by the closeness of data elements to a failure point and data elements further from a failure point are prioritized with decreasing priority levels;
ordering the diagnostic data file into a file stream, wherein the file stream is in a Tape Archive (TAR) format;
streaming the file stream to a remote diagnostic system, wherein the streaming of the file stream to the remote diagnostic system includes:
compiling a second diagnostic data file having a highest level of priority not yet sent to a stream file and obtaining a difference file of a difference between the second diagnostic data file and previous data of the second diagnostic data file with a higher level of priority; and
writing the difference file to a stream file, wherein the remote diagnostic system reconstructs an end file from the difference file;
receiving a notification from the remote diagnostic system to stop the streaming in response to sufficient diagnostic data to diagnose the failure being received by the remote diagnostic system; and
stopping the streaming in response to the notification, wherein at least a portion of the diagnostic data file is not streamed to the remote diagnostic system.

US Pat. No. 10,114,685

SYSTEM AND METHOD FOR ERROR DETECTION OF EXECUTED PROGRAM CODE EMPLOYING COMPRESSED INSTRUCTION SIGNATURES

Infineon Technologies AG,...

1. A system, comprising:a first processor configured to:
load from a first memory an instruction block comprising a plurality of opcodes and a stored error code;
for each opcode of the plurality of opcodes of the instruction block, determine a first determined signature depending on said opcode;
determine, for the instruction block, a determined error code which depends on each opcode and on the first determined signature of each opcode of the plurality of opcodes of the instruction block; and
determine that a first error occurred, if the determined error code is different from the stored error code; and
a second processor configured to:
determine a second determined signature for a current opcode of the plurality of opcodes of the instruction block depending on said current opcode; and
determine that a second error occurred, if the second determined signature for the current opcode is different from the first determined signature for the current opcode.

US Pat. No. 10,114,683

MANAGING A VIRTUAL OBJECT

INTERNATIONAL BUSINESS MA...

1. A method of managing a virtual object, said method comprising:storing said virtual object in a database accessible to a server device, said database comprising a number of avatars and a number of virtual objects distinct from said avatars; and
in response to a non-subscriber user performing, with one of said avatars, a first action on said virtual object, sending a message from said server device to at least one user that subscribes to said virtual object;
wherein said at least one user that subscribes to said virtual object comprises at least one user subscribing to said virtual object that is not a member of a community to which said non-subscriber user belongs.

US Pat. No. 10,114,682

METHOD AND SYSTEM FOR OPERATING A DATA CENTER BY REDUCING AN AMOUNT OF DATA TO BE PROCESSED

INTERNATIONAL BUSINESS MA...

6. A method for reducing data by a hardware-implemented reduce task tracker in a data center, the method comprising:in response to a reduce task distributed by a job tracker:
acquiring one or more map outputs for key names having given version information assigned by map task trackers;
wherein the hardware-implemented reduce task tracker comprises a special-purpose integrated circuit;
wherein the acquired one or more map outputs comprise one or more current map outputs with the given version information and one or more historical map outputs with historical version information indicating a time prior to the version information;
wherein the given version information was assigned by a map task tracker and indicates when a map task from which the one or more current map outputs originated was added;
wherein acquiring the one or more map outputs for key names comprises:
receiving from the job tracker the reduce task, the reduce task specifying a given version value;
requesting from the map task tracker the one or more current map outputs having the given version value;
receiving from the map task trackers the one or more current map outputs that have the given version value and are associated with the m reduce task tracker;
extracting key names from the received one or more current map outputs;
requesting from the map task trackers the one or more historical map outputs for the extracted key names having historical version values prior to the given version value; and
receiving from the map task trackers the one or more historical map outputs for the key names having the historical version values prior to the given version value; and
executing the reduce task on the acquired one or more map outputs.

US Pat. No. 10,114,681

IDENTIFYING ENHANCED SYNCHRONIZATION OPERATION OUTCOMES TO IMPROVE RUNTIME OPERATIONS

QUALCOMM Incorporated, S...

1. A method of identifying enhanced synchronization operation outcomes in a computing device, comprising:receiving a plurality of resource access requests for a first resource of the computing device from a plurality of computing elements of the computing device including a first resource access request having a first requester identifier from a first computing element of the plurality of computing elements and a second resource access request having a second requester identifier from a second computing element of the plurality of computing elements;
granting the first computing element access to the first resource based on the first resource access request;
returning a response to the second computing element including the first requester identifier as a winner computing element identifier;
determining whether the second computing element has a task to execute;
sending a signal to steal a task from the first computing element in response to determining that the second computing element does not have a task to execute, wherein the signal includes the second requester identifier;
receiving a response to the signal to steal a task including a task winner computing element identifier;
comparing the second requester identifier to the task winner computing element identifier;
determining whether the second computing element is a task winner computing element by the second requester identifier matching the task winner computing element identifier; and
adjusting a task stealing list of the second computing element in response to determining that the second computing element is not the task winner computing element.

US Pat. No. 10,114,677

METHOD AND SYSTEM FOR WORKLOAD RECOMMENDATIONS ON INFORMATION HANDLING SYSTEMS

Dell Products L.P., Roun...

1. A method of deploying a recommended workload on an information handling system comprising:extracting solution details from a solution template queried from a solution template repository, wherein the solution details include infrastructure information and workload information from the solution template;
transforming the solution details into a document;
storing the document in a data store;
obtaining existing components of the information handling system;
accessing the data store to extract components required by the document corresponding to at least one of: the infrastructure information or the workload information;
determining whether the existing components of the information handling system correlate to the components required by the document;
displaying the recommended workload based on the determination that the existing components of the information handling system correlate to the components required by the document, wherein the recommended workload includes the infrastructure information and workload information from the document;
deploying the recommended workload based on a selection of the recommended workload;
obtaining monitoring data of the existing components of the information handling system; and
displaying a resource utilization for the selected workload based on the monitoring data.

US Pat. No. 10,114,676

BUILDING MULTIMODAL COLLABORATIVE DIALOGS WITH TASK FRAMES

Microsoft Technology Lice...

1. A system comprising:at least one processor; and
memory communicatively coupled to the at least one processor, encoding computer executable instructions that, when executed by the at least one processor perform a method, the method comprising:
receiving initial input at a client, wherein the input requests a digital assistant application to perform a task;
sending the initial input to a remote service;
receiving, by the client from the remote service, a predefined task frame to serve as a master reference for completing the task, wherein the task frame is a non-graphical-user-interface (GUI) data structure including a value for a status of the task and two or more required parameters to complete the task, wherein the task frame includes a name and a value for each of the two or more required parameters;
based on the task frame, determining, by the client, a next action to complete the task;
performing, by the client, the next action to complete the task;
based on performance of the task, updating, by the client, the task frame by updating one or more values for at least one of the two or more required parameters to create an updated task frame;
sending, by the client, the updated task frame to the remote service; and
receiving, by the client, a further updated version of the task frame from the remote service, wherein at least one of a value for a task frame parameter and a status of the task frame in the further updated task frame has been updated by the remote service.

US Pat. No. 10,114,675

APPARATUS AND METHOD OF MANAGING SHARED RESOURCES IN ACHIEVING IO VIRTUALIZATION IN A STORAGE DEVICE

Toshiba Memory Corporatio...

1. A data storage device comprising:a non-volatile semiconductor memory device; and
a controller for the non-volatile semiconductor memory device, the controller including a virtual function mapping unit that maintains a function mapping table which stores values that are programmable by a host system to which the data storage device is connected and associate virtual functions with portions of shared resources of the controller, the controller configured to:
receive a command from the host system to read data from or write data in the non-volatile semiconductor memory device, the command including a virtual function identifier and a transaction identifier;
identify, via the virtual function mapping unit, a portion of a shared resource of the controller based on the virtual function identifier and the transaction identifier, wherein the portion of the shared resource comprises a time-slice of a shared processing resource; and
access the identified portion of the shared resource based on the received command.