Re: calibrate_migration_costs takes ages on s390

From: Heiko Carstens
Date: Mon Feb 13 2006 - 11:11:15 EST


> > The boot sequence on s390 sometimes takes ages and we spend a very
> > long time (up to one or two minutes) in calibrate_migration_costs. The
> > time spent there differs from boot to boot. Also the calculated costs
> > differ a lot. I've seen differences by up to a factor of 15 (yes,
> > factor not percent). Also I doubt that making these measurements make
> > much sense on a completely virtualized architecture where you cannot
> > tell how much cpu time you will get anyway. Is there any workaround or
> > fix available so we can avoid seeing this?
>
> which is the precise kernel version used? We toned down calibration a
> bit recently.

2.6.16-rc3.

> The immediate workaround would be to use the migration_cost=0 boot
> parameter.
>
> Generally, i agree that it makes sense to not calibrate at all on
> virtual platforms. Does the patch below help? It gives virtual
> platforms a way to provide a default migration cost and thus avoid the
> boot-time calibration altogether. (I have tested it on x86, it does the
> expected thing.) This needs to hit v2.6.16 too.

Yes, calibrate_migration_costs is very fast now. But it turned out that
this was just hiding the real problem: if we have CONFIG_PREEMPT disabled
the kernel gets (sometimes) unbelievably slow.
I think this happened somewhere between rc1 and rc3. Maybe Hannes knows
more exactly when this happened the first time, since I always run with
CONFIG_PREEMPT enabled.

Heiko
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/