On Aug 4, 2010, at 9:03 AM, Eduardo Bragatto wrote:

> On Aug 4, 2010, at 12:26 AM, Richard Elling wrote:
> 
>> The tipping point for the change in the first fit/best fit allocation 
>> algorithm is
>> now 96%. Previously, it was 70%. Since you don't specify which OS, build,
>> or zpool version, I'll assume you are on something modern.
> 
> I'm running Solaris 10 10/09 s10x_u8wos_08a, ZFS Pool version 15.

Then the first fit/best fit threshold is 96%.

>> NB, "zdb -m" will show the pool's metaslab allocations. If there are no 100%
>> free metaslabs, then it is a clue that the allocator might be working extra 
>> hard.
> 
> On the first two VDEVs there are no allocations 100% free (most are nearly 
> full)... The two newer ones, however, do have several allocations of 128GB 
> each, 100% free.
> 
> If I understand correctly in that scenario the allocator will work extra, is 
> that correct?

Yes, and this can be measured, but...

>> OK, so how long are they waiting?  Try "iostat -zxCn" and look at the
>> asvc_t column.  This will show how the disk is performing, though it
>> won't show the performance delivered by the file system to the
>> application.  To measure the latter, try "fsstat zfs" (assuming you are
>> on a Solaris distro)
> 
> Checking with iostat, I noticed the average wait time to be between 40ms and 
> 50ms for all disks. Which doesn't seem too bad.

... actually, that is pretty bad.  Look for an average around 10 ms and peaks
around 20ms.  Solve this problem first -- the system can do a huge amount of
allocations for any algorithm in 1ms.

> And this is the output of fsstat:
> 
> # fsstat zfs
> new  name   name  attr  attr lookup rddir  read read  write write
> file remov  chng   get   set    ops   ops   ops bytes   ops bytes
> 3.26M 1.34M 3.22M  161M 13.4M  1.36G  9.6M 10.5M  899G 22.0M  625G zfs

Unfortunately, the first line is useless, it is the summary since boot.  Try 
adding a sample interval to see how things are moving now.

> 
> However I did have CPU spikes at 100% where the kernel was taking all cpu 
> time.

Again, this can be analyzed using baseline performance analysis techniques.
The "prstat" command should show how CPU is being used.  I'm not running
Solaris 10 10/09, but IIRC, it has the ZFS enhancement where CPU time is 
attributed to the pool, as seen in prstat.
 -- richard

> 
> I have reduced my zfs_arc_max parameter as it seemed the applications were 
> struggling for RAM and things are looking better now
> 
> Thanks for your time,
> Eduardo Bragatto.
> _______________________________________________
> zfs-discuss mailing list
> zfs-discuss@opensolaris.org
> http://mail.opensolaris.org/mailman/listinfo/zfs-discuss

-- 
Richard Elling
rich...@nexenta.com   +1-760-896-4422
Enterprise class storage for everyone
www.nexenta.com



_______________________________________________
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss

Reply via email to