Dev Depot: Fast Image Cache

Part of any good app’s user experience is fast, smooth scrolling, but this places a significant burden on performance for graphics rich applications, because the traditional method of loading individual images from disk is too slow — especially while scrolling.

The makers of Fast Image Cache (www.github.com/path/FastImageCache) set out to solve this problem by creating an efficient, persistent, and above all fast way to store and retrieve images in iOS apps. It does this by storing images of similar sizes and styles together, persisting image data to disk and returning images to users significantly faster than by traditional methods. Automatically managing cache expiry based on actual usage, Fast Image Cache utilizes a model-based approach for storing and retrieving images that allows image processing on a permodel basis before storing the image into the cache.

Image tables are similar to sprite sheets, often used in 2D gaming [and combine] images of the same dimensions into a single file, this file is opened once and is left open for reading and writing for as long as an application remains in memory.

“iOS applications, especially those in the social networking space, often have many images to display at once, such as user photos,” a Fast Image Cache spokesperson states. “The intuitive, traditional approach is to request image data from an API, process the original images to create the desired sizes and styles, and [then] store these processed images on the device.”

When an application needs to display these images, they are loaded from disk into memory and displayed in an image view, or otherwise shown on screen. The problem he notes is that the process of going from compressed, on-disk image data to a fully rendered Core Animation layer that the user can actually see is very expensive, overhead-wise.

“As the number of images to be displayed increases, this cost easily adds up to a noticeable degradation in frame rate, and scrollable views further exacerbate the situation because content can change rapidly, requiring fast processing time to maintain a smooth 60FPS [frame rate],” the spokesperson explains. “These costs can easily accumulate and kill perceived application performance. Especially while scrolling, users are presented with an unsatisfying user experience that is not in line with the overall iOS experience.”

Fast Image Cache provides a solution by minimizing (or avoiding entirely) much of the problem, using a variety of techniques, including byte alignment, memory mapping, and using uncompressed image data. At the heart of this system are image tables.

“Image tables are similar to sprite sheets, often used in 2D gaming [and combine] images of the same dimensions into a single file,” the spokesperson added. “This file is opened once and is left open for reading and writing for as long as an application remains in memory.”

Image tables store uncompressed image data in their files to avoid expensive image decompression operations, but this approach has consequences.

“Uncompressed image data requires more disk space, and the difference between compressed and uncompressed file sizes can be significant, especially for image formats [such as] JPEG,” the spokesperson concludes. “For this reason, Fast Image Cache works best with smaller images, although there is no API restriction that enforces this.”

Fast Image Cache is offered under the MIT license, requires iOS 6.0 or greater, and relies on the Core Graphics, Foundation and UIKit frameworks. If you develop iOS apps, and want to speed them up, then visit GitHub and give Fast Image Cache a try.

Related:  

Copyright © 2024 Adnet Media. All Rights Reserved. XBIZ is a trademark of Adnet Media.
Reproduction in whole or in part in any form or medium without express written permission is prohibited.

More Articles

profile

VerifyMy Seeks to Provide Frictionless Online Safety, Compliance Solutions

Before founding VerifyMy, Ryan Shaw was simply looking for an age verification solution for his previous business. The ones he found, however, were too expensive, too difficult to integrate with, or failed to take into account the needs of either the businesses implementing them or the end users who would be required to interact with them.

Alejandro Freixes ·
opinion

How Adult Website Operators Can Cash in on the 'Interchange' Class Action

The Payment Card Interchange Fee Settlement resulted from a landmark antitrust lawsuit involving Visa, Mastercard and several major banks. The case centered around the interchange fees charged to merchants for processing credit and debit card transactions. These fees are set by card networks and are paid by merchants to the banks that issue the cards.

Jonathan Corona ·
opinion

It's Time to Rock the Vote and Make Your Voice Heard

When I worked to defeat California’s Proposition 60 in 2016, our opposition campaign was outspent nearly 10 to 1. Nevertheless, our community came together and garnered enough support and awareness to defeat that harmful, misguided piece of proposed legislation — by more than a million votes.

Siouxsie Q ·
opinion

Staying Compliant to Avoid the Takedown Shakedown

Dealing with complaints is an everyday part of doing business — and a crucial one, since not dealing with them properly can haunt your business in multiple ways. Card brand regulations require every merchant doing business online to have in place a complaint process for reporting content that may be illegal or that violates the card brand rules.

Cathy Beardsley ·
profile

WIA Profile: Patricia Ucros

Born in Bogota, Colombia, Ucros graduated from college with a degree in education. She spent three years teaching third grade, which she enjoyed a lot, before heeding her father’s advice and moving to South Florida.

Women In Adult ·
opinion

Creating Payment Redundancies to Maximize Payout Uptime

During the global CrowdStrike outage that took place toward the end of July, a flawed software update brought air travel and electronic commerce to a grinding halt worldwide. This dramatically underscores the importance of having a backup plan in place for critical infrastructure.

Jonathan Corona ·
opinion

The Need for Minimal Friction in Age Verification Technology

In the adult sector, robust age assurance, comprised of age verification and age estimation methods, is critical to ensuring legal compliance with ever-evolving regulations, safeguarding minors from inappropriate content and protecting the privacy of adults wishing to view adult content.

Gavin Worrall ·
opinion

Account-to-Account Payments: The New Banking Disruptor?

So much of our industry relies upon Visa and Mastercard to support consumer payments — and with that reliance comes increased scrutiny by both brands. From a compliance perspective, the bar keeps getting raised until it feels like we end up spending half our time making sure we are compliant rather than growing our business.

Cathy Beardsley ·
profile

WIA Profile: Samantha Beatrice

Beatrice credits the sex positivity of Montreal for ultimately inspiring her to pursue work in adult entertainment. She had many friends working in the industry, from sex workers to production teams, so it felt like a natural fit and offered an opportunity to apply her marketing and social media savvy to support people she truly believes in and wants to see succeed.

Women In Adult ·
opinion

Understanding the Latest Server Processors

Over the last decade, we mostly stopped talking about CPU performance. Recently, however, there has been a seismic and exciting change in the CPU landscape, due to innovation by a chip company called Advanced Micro Devices (AMD).

Brad Mitchell ·
Show More