G06F15/173

Techniques for sharing device capabilities over a network of user devices

Techniques are disclosed for generating device cluster capability information for a cluster of devices in a network environment. Capability information can specify capabilities of the devices in the cluster. A first user device can generate device capabilities for the first user device and obtain device capabilities for other devices in the cluster. The first user device can generate cluster capability information providing an intersection of the first set of device capabilities and device capabilities of the other user devices in the cluster. The first user device can obtain cluster capability information for other clusters in the network environment and receive a request from a service user device to perform a specific task. The first user device can transmit cluster capability information relating to a selected cluster that corresponds with the request.

System and method for offline-first application development

A system to synchronize application data bidirectionally between N clients and one server, by: (a) pushing mutations made in the client to the server, wherein each mutation is comprised of a mutation name identifying the type of mutation, and arguments provided by the application modifying the behavior of the mutation, and the pusher also pushes a client ID and mutation ID for each mutation to the server; (b) pulling server differentials to the client; (c) storing key/value pairs in a versioned cache, wherein the keys are text strings and the values are data provided by an application in the client; and (d) resolving conflicts between the client and the server with a rebaser that: forks the cache to create a synch branch when the client receives the latest server differential, applies the latest received server differential to the synch branch, applies only those mutations to the synch branch that have not already been acknowledged by the server, and then makes the synch branch the main branch of the cache.

Anomaly detection for cloud applications
11580135 · 2023-02-14 · ·

Requests are received for handling by a cloud computing environment which are then executed by the cloud computing environment. While each request is executing, performance metrics associated with the request are monitored. A vector is subsequently generated that encapsulates information associated with the request including the text within the request and the corresponding monitored performance metrics. Each request is then assigned (after it has been executed) to either a normal request cluster or an abnormal request cluster based on which cluster has a nearest mean relative to the corresponding vector. In addition, data can be provided that characterizes requests assigned to the abnormal request cluster. Related apparatus, systems, techniques and articles are also described.

Method and system for converting a single-threaded software program into an application-specific supercomputer

The invention comprises (i) a compilation method for automatically converting a single-threaded software program into an application-specific supercomputer, and (ii) the supercomputer system structure generated as a result of applying this method. The compilation method comprises: (a) Converting an arbitrary code fragment from the application into customized hardware whose execution is functionally equivalent to the software execution of the code fragment; and (b) Generating interfaces on the hardware and software parts of the application, which (i) Perform a software-to-hardware program state transfer at the entries of the code fragment; (ii) Perform a hardware-to-software program state transfer at the exits of the code fragment; and (iii) Maintain memory coherence between the software and hardware memories. If the resulting hardware design is large, it is divided into partitions such that each partition can fit into a single chip. Then, a single union chip is created which can realize any of the partitions.

System and method for enhanced virtual queuing

A system and method for managing virtual queues. A cloud-based queue service manages a plurality of queues hosted by one or more entities. The queue service is in constant communication with the entities providing queue management, queue analysis, and queue recommendations. The queue service is likewise in direct communication with queued persons. Sending periodic updates while also motivating and incentivizing punctuality and minimizing wait times based on predictive analysis. The predictive analysis uses “Big Data” and other available data resources, for which the predictions assist in the balancing of persons across multiple queues for the same event or multiple persons across a sequence of queues for sequential events.

Method and system for remote testing of devices

A method and system for remote testing of a plurality of devices is disclosed. The method may include receiving a request from a client system to perform testing on a set of remote devices. The local system and the client system are connected via a first network connection and the plurality of remote devices are connected to the local system via a second network connection. The method may further include receiving an input from the client system with reference to a test-suite to perform a testing action on the set of remote devices, generating a test command corresponding to the input, and transmitting the test command to each of the set of remote devices. The method may further include receiving feedback from each of the set of remote devices and transmitting the feedback to the client system.

FAR-END DATA MIGRATION DEVICE AND METHOD BASED ON FPGA CLOUD PLATFORM
20230045601 · 2023-02-09 ·

A far-end data migration device and method based on a FPGA cloud platform. The device includes a server, a switch, and a plurality of FPGA acceleration cards. The server transmits data to be accelerated to the FPGA acceleration cards by means of the switch. The FPGA acceleration cards are configured to perform a primary and/or secondary acceleration on the data, and are configured to migrate the accelerated data. The method includes: transmitting data to be accelerated to a FPGA acceleration card from a server by means of a switch; performing, by the FPGA acceleration card, a primary and/or secondary acceleration on the data to be accelerated; and migrating, by the FPGA acceleration card, the accelerated data.

ORCHESTRATION OF OVERLAY PATHS FOR WIDE AREA NETWORK VIRTUALIZATION

The present application relates to traffic routing for overlay paths in a public cloud network. A path orchestrator receives a configuration of a set of overlay paths for a wide area network virtualization from a client, each overlay path including virtual routing nodes associated with respective geographic regions and at least one policy for a link between the virtual routing nodes. The path orchestrator is configured to instantiate a plurality of virtual routers on computing resources of the public cloud network located within the respective geographic regions based on the configuration, each virtual router configured to route traffic according to the policy for each link associated with the virtual routing node corresponding to the virtual router. The path orchestrator is configured to scale the plurality of virtual routers based on traffic for the client on the set of overlay paths.

Fast node death detection

Described is an improved approach to implement fast detection of node death. Instead of just relying on multiple heart beats to fail in order to determine whether a node is dead, the present approach performs an on demand validation using RDMA to determine whether the node is reachable, where the approach of using RDMA is significantly faster than the heartbeat approach.

Connection tracking for container cluster

Some embodiments provide a method for a module executing on a Kubernetes node in a cluster. The method retrieves data regarding ongoing connections processed by a forwarding element executing on the node. The method maps the retrieved data to Kubernetes concepts implemented in the cluster. The method exports the retrieved data along with the Kubernetes concepts to an aggregator that receives data regarding ongoing connections from a plurality of nodes in the cluster.