[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: Performance problem with mysql on a 3ware 1+0 raid array



Neil,

Thanks for that.  I guess I'll let gentoo know that their Kernel Docs are out 
of date.  

For anyone else that's got the latest gentoo-sources out there... be warned 
:o)

Thanks again,

Mark

On Sunday 04 May 2003 07:32 pm, Neil Brown wrote:
> On Friday May 2, mbasil alabanza com wrote:
> > Heh... that's funny.  That last message stopped at a lone period on the
> > line.
> >
> > :o)  Here's the actual message.
> >
> > Hi Neil,
> >
> > I have a question regarding your bdflush settings.  The kernel docs say
> > the following:
> >
> >
> >
> > Table 2-2: Parameters in /proc/sys/vm/bdflush
> > .........................................................................
> >..... Value      Meaning
> >  nfract     Percentage of buffer cache dirty to  activate bdflush
> >  ndirty     Maximum number of dirty blocks to  write out per wake-cycle
> >  nrefill    Number of clean buffers to try to obtain  each time we call
> > refill nref_dirt  buffer threshold for activating bdflush when trying to
> > refill buffers.
> >  dummy      Unused
> >  age_buffer Time for normal buffer to age before we flush it
> >  age_super  Time for superblock to age before we flush it
> >  dummy      Unused
> >  dummy      Unused
> > .........................................................................
> >.....
>
> But the kernel source says :
> fs/buffer.c:
> union bdflush_param {
> 	struct {
> 		int nfract;	/* Percentage of buffer cache dirty to
> 				   activate bdflush */
> 		int ndirty;	/* Maximum number of dirty blocks to write out per
> 				   wake-cycle */
> 		int dummy2;	/* old "nrefill" */
> 		int dummy3;	/* unused */
> 		int interval;	/* jiffies delay between kupdate flushes */
> 		int age_buffer;	/* Time for normal buffer to age before we flush it */
> 		int nfract_sync;/* Percentage of buffer cache dirty to
> 				   activate bdflush synchronously */
> 		int nfract_stop_bdflush; /* Percetange of buffer cache dirty to stop
> bdflush */ int dummy5;	/* unused */
> 	} b_un;
> 	unsigned int data[N_PARAM];
> } bdf_prm = {{30, 500, 0, 0, 5*HZ, 30*HZ, 60, 20, 0}};
>
> So the 5th number is 'interval'.
>
> Later:
> 		/* update interval */
> 		interval = bdf_prm.b_un.interval;
> 		if (interval) {
> 			tsk->state = TASK_INTERRUPTIBLE;
> 			schedule_timeout(interval);
> 		} else {
> 		stop_kupdate:
> 			tsk->state = TASK_STOPPED;
> 			schedule(); /* wait for SIGCONT */
> 		}
>
> so interval seems to actually be used.  Maybe someone should update
> the kernel docs..... but I just check the current kernel docs:
>    Documentation/filesystems/proc.txt
> and
>    Documentation/sysctl/vm.txt
> both from the current 2.4.latest tree and they seem to be correct.
>
> NeilBrown
>
>
>
> _______________________________________________
> Ext3-users mailing list
> Ext3-users redhat com
> https://listman.redhat.com/mailman/listinfo/ext3-users





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]