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

opinion

Best Practices for Payment Gateway Security

Securing digital payment transactions is critical for all businesses, but especially those in high-risk industries. Payment gateways are a core component of the digital payment ecosystem, and therefore must follow best practices to keep customer data safe.

Jonathan Corona ·
opinion

Ready for New Visa Acquirer Changes?

Next spring, Visa will roll out the U.S. version of its new Visa Acquirer Monitoring Program (VAMP), which goes into effect April 1, 2025. This follows Visa Europe, which rolled out VAMP back in June. VAMP charts a new path for acquirers to manage fraud and chargeback ratios.

Cathy Beardsley ·
opinion

How to Halt Hackers as Fraud Attacks Rise

For hackers, it’s often a game of trial and error. Bad actors will perform enumeration and account testing, repeating the same test on a system to look for vulnerabilities — and if you are not equipped with the proper tools, your merchant account could be the next target.

Cathy Beardsley ·
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 ·
Show More