EDUCBA

EDUCBA

MENUMENU
  • Free Tutorials
  • Free Courses
  • Certification Courses
  • 600+ Courses All in One Bundle
  • Login

Cache Memory Types

By A. SathyanarayananA. Sathyanarayanan

Home » Software Development » Software Development Tutorials » Computer Tutorial » Cache Memory Types

Cache Memory Types

Introduction to Cache Memory Types

In Cache Memory Types, Cache Memory is a high-speed auxiliary memory that holds frequently accessed instructions and data to make it available to the processor at the shortest possible time thus reducing the overall process cycle time. The cost of this memory is higher than the main memory of the computer as well as external hard disks but cheaper than Register and it is an intermediary between main memory and the processor.

In earlier computers, Cache memory used to be a separate entity and in modern microprocessors, it is part of the chipset, synchronizes with the speed of CPU in performing tasks, and helps in encoding and retrieving data. Let’s study various types of Cache memory types in this article.

Start Your Free Software Development Course

Web development, programming languages, Software testing & others

Types of Cache Memory

Cache memory within a computer is classified under various types depending upon its physical location within the computer whether they are:

1. Part of the processor chip (Primary Cache L1)

2. Located between the processor and main memory (Secondary Cache L2)

3. External to the processor (Main Memory L3)

Apart from being used in the main memory arena Cache concept is put into use in the following areas to enhance the performance of Web applications. Some of these are under the control of the users and the rest of them are under the system administrator’s control.

1. Caching in browser, proxy, Gateway during Web browsing

2. Caching in database server during data access

3. Application/output caching

4. Distributed caching.

Level-1 – Primary Cache L1

Primary Cache memory is part of the processor and it is located very near to CPU making it an integral part of CPU. The size of this memory is very small ranging between 2KB to 64KB. Early Pentium Chip and Intel 486 chips had a 16KB built-in cache memory. It is a high-speed memory that allows storing/ retrieving of instructions and data at a speed matching processer speed. CPU looks for data or instruction in the L1 cache first before seeking others. In modern Microprocessors L1 memory is integrated into CPU and accessing data is quicker than regular memory and the overall processing speed increases. There will be separate L1 memory for each processor in case of Multicore CPUs.

Popular Course in this category
All in One Software Development Bundle (600+ Courses, 50+ projects)600+ Online Courses | 3000+ Hours | Verifiable Certificates | Lifetime Access
4.6 (3,144 ratings)
Course Price

View Course

Related Courses
Windows 10 Training (4 Courses, 4+ Projects)JWS Java Web Services Training (4 Courses, 11 Projects)Java Training (40 Courses, 29 Projects, 4 Quizzes)

Level-2 – Secondary Cache L2

The size of the Secondary cache is more than L1 Cache, ranging from 256KB to 512KB. If a cache miss occurs during the L1 search, instructions and Data will be searched in the L2 cache. In most cases, this memory is external to the processor and this memory is connected to the processor through the high-speed bus, and hence the speed of storing and retrieval is reasonably fast.

Till 486 chips family, there was no internal cache and everything was external and it was called primary. 80486 was the first processor to have an internal cache of 8 KB and the Pentium family had 256KB to 512 KB external secondary L2 cache.

Level-3 – L3 Cache

The memory size of this cache is between 1 MB to 8 MB and it is the largest among L1, L2, and L3. Multicore CPUs have separate L1 cache and L2 cache for every core but L3 cache is common to all cores and it is being shared by them. The speed of the L3 cache is better than the main memory.

Web Caching

The browser maintains the history of data browsed as a cache on the local computer. When a new request for any data is raised, the local cache memory is searched. If the data is available in cache and it is not updated since last access, the data is used from the cache and network traffic and latency is reduced considerably. This caching is controlled at the user level and the user can clear the stored cache data at any time.

Caching in Proxy and gateway servers are different from browser caching and it involves large user groups and hence it is administered centrally. Domain name server data and mail server records are stored in the cache in these servers and these data are not changed frequently and it is better to allow them to remain in the cache for a longer time. This cache helps to avoid unnecessary network access and reduces the browsing time.

Data Caching

Fetching data from a Database always takes more time due to Input/ Output processing hardware constraints. If the same set of data is accessed quite frequently and if it remains the same over some time, it would be better to store such data in the data cache maintained in the application server. By doing so, the number of database accesses would come down and the application would be able to retrieve information faster from the data cache.

There should be a mechanism to clear the cache if the original data in the database is altered so that a fresh version is brought from the database during the next request. Caching and de-caching operations are handled at the Application and database server level.

Application/Output Caching

It is a built-in mechanism in content management applications and it enables faster download of the web page and results in a drastic reduction in server overhead. It leverages the caching techniques at the server level that caches raw HTML instead of caching raw data sets in the data caching option. Caching may occur at the page level or parts of page-level or module level but normally caching occurs at the HTML level. The reduction of 50% page loading time is achievable in this method.

Distributed Caching

In big high volume systems, Data is stored across distributed database servers. Data from these database servers are cached in web servers. There will be multiple servers in the distributed cache. Data is supplied to applications from this cache. The cache will not run out of space as new servers can easily be added to the server pool without disturbing users. This technique is adopted by many big players like Youtube, Google, and Amazon in serving content faster to the users.

Conclusion

Cache Concept started with computer memory and it gained wide traction in other areas as well to optimize the performance of the applications.

Recommended Articles

This is a guide to Cache Memory Types. Here we discuss an introduction to Cache Memory Types, various types with detail explanation. You can also go through our other related articles to learn more –

  1. Types of Memory in Computer
  2. Types of Computer Architecture
  3. Features of Operating System
  4. What is Memcached?

All in One Software Development Bundle (600+ Courses, 50+ projects)

600+ Online Courses

3000+ Hours

Verifiable Certificates

Lifetime Access

Learn More

0 Shares
Share
Tweet
Share
Primary Sidebar
Computer Tutorial
  • Computer Basics
    • New Technologies of Computer
    • Application of Computer Graphics
    • Types of Computer Architecture
    • Types of Computer Software
    • Line Drawing Algorithm
    • SOAP Web Services Interview Questions
    • Web Services Interview Questions
    • Microservices Interview Questions
    • What is Windows 10?
    • Windows 10 Desktop Mode
    • Windows Commands  
    • Windows Interview Questions
    • Windows Networking Commands
    • Windows Operators
    • Windows Server Interview Questions
    • Introduction to Windows
    • Top Windows Phone Apps
    • Windows Monitoring Tool
    • Productivity tricks for Windows 10
    • Computer Network Advantages and Disadvantages
    • Computer Network Interview Questions
    • Introduction To Computer Network
    • What is Embedded Systems
    • Components of Embedded System
    • Embedded Systems Security
    • Types of Computer Network
    • Types of Computer Operating System
    • Evolution of Operating System
    • NAS Storage Device
    • Windows Administrator Interview
    • Types of Communication Network
    • What is Automata
    • Types of Mainframe Computers
    • Types of Computer Hardware
    • Types of Sensors
    • What is Server
    • What is RPC
    • What is Microservices
    • Types of Computer Virus
    • Types of Computer Keyboard
    • Types of Motherboard
    • Sensor Device
    • What is Computer Graphic Design
    • Computer Architecture Interview
    • What is Computer Science?
    • What is Bluetooth?
    • What is VLAN?
    • Types of VLAN
    • Types of LAN
    • How does LAN switches work
    • What is VLAN Network?
    • What is Native VLAN?
    • How does LAN Switches work?
    • Switching Modes
    • What is Storage?
    • What is Object Storage?
    • What is Block Storage?
    • Block Level Storage
    • Cordova Local Storage
    • Threads in Operating System
    • What is Gateway?
    • What is Ethernet?
    • What is Virtual Machine?
    • What is a Trunk Port?
    • VPN Applications for Android
    • What is a NAS Drive?
    • What is Ring Topology?
    • Point to Point Topology
    • What is Mesh Topology?
    • Extended Star Topology
    • Token Ring Topology
    • Physical Topology
    • What is a Hybrid Topology?
    • Hybrid Network Topology
    • Star Network Topology
    • Star Bus Topology
    • Zariski Topology
    • Ethernet Topology
    • Logical Topology
    • Partial Mesh Topology
    • Types of Computer Cables
    • Types of Computer Language
    • Features of Operating System
    • Functions of Operating System
    • Multithreading in Operating System
    • Ethernet Frame Format
    • Types of Memory in Computer
    • What is Heap Memory?
    • What is Register?
    • Types of Registers
    • What is Arduino?
    • Arduino Operators
    • What is iSCSI?
    • Computer Science Interview Questions
    • Types of USB Ports
    • What is Port
    • Daisy Chain Network
    • What is a Monitor?
    • What is Printer?
    • Types of Printers
    • What is WPS
    • What is Mouse?
    • Types of Socket
    • Transmission Modes
    • Computers Output Devices
    • Memory Units
    • Secondary Memory
    • What is Memory Card?
    • Types of Memory Cards
    • What is Intranet?
    • Central Processing Unit
    • Computer Ports
    • What is CPU Register
    • Types of CPU
    • Types of Compact Disc
    • Cache Memory Types
    • What is a Motherboard?
    • Types of LED
    • Types of Processor
    • Types of Primary Memory
    • Helpdesk Tool
    • What is Optical Fiber?
    • Windows 10 creation tool

Related Courses

Windows 10 Training Course

Java Web Services Training Course

Java Training Course

Footer
About Us
  • Blog
  • Who is EDUCBA?
  • Sign Up
  • Corporate Training
  • Certificate from Top Institutions
  • Contact Us
  • Verifiable Certificate
  • Reviews
  • Terms and Conditions
  • Privacy Policy
  •  
Apps
  • iPhone & iPad
  • Android
Resources
  • Free Courses
  • Java Tutorials
  • Python Tutorials
  • All Tutorials
Certification Courses
  • All Courses
  • Software Development Course - All in One Bundle
  • Become a Python Developer
  • Java Course
  • Become a Selenium Automation Tester
  • Become an IoT Developer
  • ASP.NET Course
  • VB.NET Course
  • PHP Course

© 2020 - EDUCBA. ALL RIGHTS RESERVED. THE CERTIFICATION NAMES ARE THE TRADEMARKS OF THEIR RESPECTIVE OWNERS.

EDUCBA Login

Forgot Password?

EDUCBA
Free Software Development Course

Web development, programming languages, Software testing & others

*Please provide your correct email id. Login details for this Free course will be emailed to you
Book Your One Instructor : One Learner Free Class

Let’s Get Started

This website or its third-party tools use cookies, which are necessary to its functioning and required to achieve the purposes illustrated in the cookie policy. By closing this banner, scrolling this page, clicking a link or continuing to browse otherwise, you agree to our Privacy Policy

EDUCBA

*Please provide your correct email id. Login details for this Free course will be emailed to you
EDUCBA
Free Software Development Course

Web development, programming languages, Software testing & others

*Please provide your correct email id. Login details for this Free course will be emailed to you

Special Offer - All in One Software Development Bundle (600+ Courses, 50+ projects) Learn More