L
L
LRC2013-01-25 18:42:44
Xen
LRC, 2013-01-25 18:42:44

Xen, Flashcache, Windows Guest performance issue?

So there is Dom0 Debian

uname -a
Linux 2.6.32-5-xen-amd64 #1 SMP Mon Jan 21 05:36:35 UTC 2013 x86_64 GNU/Linux

There is a raid1 on top of it LVM on partitions virtuals are running, there is not enough IOPS
Delivered an SSD disk, configured Flashcache
It got worse
0 838860800 flashcache conf:
ssd dev (/dev/sdc1), disk dev (/dev/lv1/tpdb1) cache mode(WRITE_BACK )
capacity(50998M), associativity(512), data block size(4K) metadata block size(4096b)
skip sequential thresh(0K)
total blocks(13055488), cached blocks(9726), cache percent(0)
dirty blocks(96 ), Dirty Percent (0)
Nr_Queued (0)
Size Hist: 512: 27698483 1024: 145282 1536: 1401768 2048: 57163 2560: 1399866 3072: 140962 3584: 27675984 4096: 147120 435: 50: 42 6144: 50 6656:20 7168:32 7680:27 8192:3807 8704:26 9216:15 9728:34 10240:19 10752:22 11264:
32 11776:19 12288:1453 12800:13 13312:22 13824:22 14336:19 14848:19 15360:20 15872:28 16384:3198
0 838860800 flashcache stats:
reads(491839
) , read hit percent(0)
write hits(3584) write hit percent(0)
dirty write hits(3088) dirty write hit percent(0)
replacement(0), write replacement(0)
write invalidates(319), read invalidates( 1901)
pending enqueues(159), pending inval(109)
metadata dirties(658), metadata cleans(645)
metadata batch(577) metadata ssd writes(726)
cleanings(645) fallow cleanings(0)
no room(0) front merge(495) back merge(33)
disk reads(488281), disk writes(2598243) ssd reads(4203) ssd writes(36995)
uncached reads(455758), uncached writes(2597598), uncached IO requeue(0)
disk read errors(0), disk write errors(0) ssd read errors(0) ssd write errors(0)
uncached sequential reads(0), uncached sequential writes(0) pid_adds(0), pid_dels(0), pid_drops
(0) pid_expiry(0 ) , for some reason it caches only 4K blocks. Actually, the question is how to make Flashcache cache blocks of 512 bytes most of them, and if at least they get into the cache, this will help us a lot. An alternative solution to the problem is how to force the guest Windows to operate exclusively with 4K blocks

Answer the question

In order to leave comments, you need to log in

2 answer(s)
L
LRC, 2013-01-28
@LRC

If anyone is interested, I found the solution myself.
LVM volumes were made for my virtual machines, and since Windows writes 512 bytes of the sector, and the specifics of the database are such that there are a lot of small transactions, I got a wild stream of small records of 512 bytes, which even flashcache did not cache, since they are not a multiple of 4K
Now I overtook the partitions to the files
dd if=/dev/lv/laylay of=/home/laylay.img
and replaced the machine's xen config from phy to file
flashcache with its writeback set to the partition that is mounted in / home
It turns out that the guest Windows is now changes 512 bytes in the file, Dom0 in these cases changes the whole 4k cluster, and it would get worse, but since flashcache writeback is now working, it has become much better.

R
rPman, 2013-01-25
@rPman

Actually, the question is how to make Flashcache cache blocks of 512 bytes of them most of all, and if at least they get into the cache, this will help us a lot.
An alternative solution to the problem is how to force the guest Windows to operate exclusively with 4K blocks
Check. maybe the ntfs system partition is not formatted with a sector size of 512? through backup-format-restore make the sector size in 4k forcibly.

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question