Issue Details (XML | Word | Printable)

Key: CORE-5660
Type: Improvement Improvement
Status: Closed Closed
Resolution: Fixed
Priority: Major Major
Assignee: Vlad Khorsun
Reporter: Vlad Khorsun
Votes: 0
Watchers: 0

If you were logged in you would be able to see more operations.
Firebird Core

Make flush of big number of dirty pages faster

Created: 14/Nov/17 11:14 AM   Updated: 18/Nov/17 05:47 AM
Component/s: Engine
Affects Version/s: 2.5.0, 2.5.1, 2.5.2, 2.5.2 Update 1, 2.5.3, 2.1.7, 2.5.3 Update 1, 2.5.4, 2.5.5, 4.0 Initial, 3.0.0, 2.5.6, 3.0.1, 2.5.7, 3.0.2, 4.0 Alpha 1
Fix Version/s: 3.0.3, 4.0 Beta 1

File Attachments: None
Image Attachments:

1. sweep-3.0.2-hdd.png
(57 kB)

2. sweep-3.0.2-ssd.png
(44 kB)

3. sweep-3.0.3-hdd.png
(58 kB)

4. sweep-3.0.3-ssd.png
(51 kB)

QA Status: Cannot be tested

 Description  « Hide
Flush cache algorithm could be improved for the case when there is a big number of dirty pages to write.
Current algorithm adds noticeable CPU load and makes whole process slower than it could be.

 All   Comments   Change History   Subversion Commits      Sort Order: Ascending order - Click to sort in descending order
Vlad Khorsun added a comment - 14/Nov/17 11:16 AM
Graphs (by SysInternals Process Explorer) of sweep running by Firebird 3.0.2 Super Server on the 9GB TPCC database with page cache of 500K pages

Vlad Khorsun added a comment - 14/Nov/17 11:24 AM
Same graphs with improved flush algorithm