Pre-loading Translated Code in Cloud Emulated Applications

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Video game loading times are substantial, especially when emulating games over a cloud-based network, and incremental buffering requires redesigning games, increasing development time and cost, necessitating a method for pre-loading translated code in cloud-based emulations.

Innovation Solution

An emulator on a cloud-based server translates and caches game code, using a prediction engine to pre-load games based on historical data, user profiles, and game triggers, allowing immediate gameplay without loading delays, even from non-designated starting positions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If incremental buffering is used to reduce loading time, then loading speed is improved, but game development time and cost increase due to required redesign

Engineering Contradiction:
Improveloading timeVSAvoidgame redesign complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The system performs preliminary translation of game code from the original platform to the target platform before the user actually plays the game. This pre-translation creates a buffer of translated code that can be quickly delivered when needed, eliminating the need for incremental buffering redesigns while achieving fast loading times.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

An intermediary translation layer is introduced between the original game code and the emulated execution environment. This translation layer pre-processes the code into an intermediate format that can be efficiently executed on different platforms, avoiding the need to redesign games with incremental buffering built in.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Loss of time

If game code is translated and cached in cloud-based emulation, then immediate gameplay is enabled, but network delivery time increases

Engineering Contradiction:
Improveloading timeVSAvoidnetwork delivery speed
Core Design Contradiction:
Loss of timeVSSpeed

Solution Approach 1:

The translation and caching of game code is performed in advance on the cloud server before the user requests to play. This preliminary preparation ensures that when the user selects a game, the translated code is already ready and can be delivered quickly, minimizing network delivery time despite the initial translation overhead.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system translates and caches more code than immediately necessary, preparing additional buffer zones beyond what is strictly required for the current gameplay position. This excessive preparation ensures that even if network delivery is delayed, sufficient code is already cached to maintain immediate gameplay capability.

Inventive Principle:
Principle #16Partial or excessive action

3Adaptability or versatility

If cloud-based network delivery is used for emulated games, then platform compatibility is improved, but loading time increases due to network delays

Engineering Contradiction:
Improveplatform compatibilityVSAvoidloading time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The system performs preliminary translation and caching of game code on the cloud server before delivery to the user's device. This advance preparation compensates for network delays by ensuring the code is ready for immediate execution upon receipt, maintaining fast loading times despite cloud-based delivery and achieving cross-platform compatibility.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11660534B2Pre-loading translated code in cloud based emulated applications
Publication Date: 2023.05.30 SONY INTERACTIVE ENTERTAINMENT LLC
  • US11660534B2 patent drawing
  • US11660534B2 patent drawing
  • US11660534B2 patent drawing

AI summary

Pre-translated code for an emulated application may be retrieved and executed to translate data from the emulated application into a form compatible with the client device before receiving a request for the emulated application from the client device. The translated data may be delivered to the client device platform over a network after receiving the request for the emulated application from the client device.