Hardware-Accelerated Map Overlay Rendering with Shared Memory

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional methods for overlaying animated data on maps face issues such as memory overload, leading to slow loading and frame rates, and are limited in delivering rich and complex animations, especially on portable devices, due to reliance on single-processor memory and lack of flexibility in rendering techniques.

Innovation Solution

A hardware-accelerated framework for memory sharing allows third-party developers to render graphical overlays on maps using shared memory between the CPU and GPU, enabling the use of richer data sets and animations at frame rates comparable to native map applications by vending surface textures for each map tile and allowing flexible rendering approaches like 2D and 3D shaders.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If existing rendering techniques on existing user devices are used to render data-rich overlays such as animations, then the processing capabilities of portable user devices are strained, but the ability to present rich and complex animations is improved

Engineering Contradiction:
Improveability to present rich and complex animationsVSAvoidprocessing capability stability
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The rendering system is segmented into multiple independent components: the base map rendering engine, the overlay rendering engine, and the animation rendering pipeline. Each component operates independently with its own memory allocation and processing resources. This segmentation allows rich animations to be rendered without overwhelming the entire system, as each segment handles its own data-rich content separately, preventing processing capability strain while maintaining animation richness.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension of hardware acceleration by utilizing the GPU's parallel processing capabilities for overlay and animation rendering. This dimensional shift from single-threaded CPU rendering to multi-threaded GPU rendering enables the system to handle data-rich animations smoothly without straining the overall processing capabilities of portable devices.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Adaptability or versatility

If overlays are developed by entities different than the entity that maintains the base map, then development flexibility is improved, but incompatibilities between overlays and base maps arise

Engineering Contradiction:
Improvedevelopment flexibilityVSAvoiddisplay compatibility
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent implements a universal rendering interface that accepts overlays from any entity regardless of the base map source. The standardized API and common rendering pipeline enable third-party overlays to be seamlessly integrated with the base map system. This universal interface ensures display compatibility while maintaining development flexibility, as developers can create overlays independently without worrying about compatibility issues with the base map provider.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent introduces an intermediary rendering layer that mediates between third-party overlay developers and the base map system. This intermediary component translates various overlay formats into a standardized internal representation, ensuring compatibility without restricting developer flexibility. The intermediary handles format conversion and rendering parameter normalization, allowing diverse overlays to display correctly on any base map.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If shared memory between CPU and GPU is utilized for rendering overlays, then frame rates are improved to 50-100 frames per second, but memory management complexity increases

Engineering Contradiction:
Improveframe rateVSAvoidmemory management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements a self-service memory management system where the rendering framework automatically handles memory allocation, sharing, and synchronization between CPU and GPU. The system includes automatic memory buffer management that allocates shared memory regions and handles the complex synchronization protocols without requiring manual intervention. This self-service approach enables high frame rates of 50-100 fps while abstracting away the memory management complexity from the application layer.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent changes the memory management parameters by transitioning from separate CPU and GPU memory spaces to a unified shared memory architecture. This parameter change enables direct memory access between processors, dramatically improving frame rates. The system dynamically adjusts memory allocation parameters and synchronization intervals to optimize performance, achieving 50-100 fps while the underlying complexity is managed through automated parameter tuning.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS20230366700A1Overlay rendering using a hardware-accelerated framework for memory sharing and overlay based map adjusting
Publication Date: 2023.11.16 APPLE INC
  • US20230366700A1 patent drawing
  • US20230366700A1 patent drawing
  • US20230366700A1 patent drawing

AI summary

Third-party overlay data that includes customized graphics such as animations may be rendered on a base map using a hardware-accelerated framework. When third-party overlay data is deemed incompatible with a first version of a base map, features of the base map may be flexed to better accommodate the overlay data.