Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 4 Mar 2017 15:49:52 -0500
From:      Pedro Giffuni <pfg@FreeBSD.org>
To:        John Baldwin <jhb@freebsd.org>
Cc:        Slawa Olhovchenkov <slw@zxy.spb.ru>, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   Re: svn commit: r314669 - head/sys/i386/conf
Message-ID:  <D81029FA-61CF-4648-A2A8-8570DEF28B14@FreeBSD.org>
In-Reply-To: <2368011.hGEX4V32U5@ralph.baldwin.cx>
References:  <201703041504.v24F4HMh023937@repo.freebsd.org> <20170304153228.GM15630@zxy.spb.ru> <ef83ffe1-6198-3468-d132-849c5d38f52d@apache.org> <2368011.hGEX4V32U5@ralph.baldwin.cx>

next in thread | previous in thread | raw e-mail | index | archive | help

> Il giorno 04 mar 2017, alle ore 14:43, John Baldwin <jhb@freebsd.org> =
ha scritto:
>=20
> On Saturday, March 04, 2017 10:52:46 AM Pedro Giffuni wrote:
>>=20
>> On 03/04/17 10:32, Slawa Olhovchenkov wrote:
>>> On Sat, Mar 04, 2017 at 03:04:17PM +0000, Pedro F. Giffuni wrote:
>>>=20
>>>> Author: pfg
>>>> Date: Sat Mar  4 15:04:17 2017
>>>> New Revision: 314669
>>>> URL: https://svnweb.freebsd.org/changeset/base/314669
>>>>=20
>>>> Log:
>>>>  Drop i486 from the default i386 GENERIC kernel configuration.
>>>>=20
>>>>  80486 production was stopped by Intel on September 2007. Dropping =
the 486
>>>>  configuration option from the GENERIC kernel improves performance
>>>>  slightly.
>>>>=20
>>>>  Removing I486_CPU is consistent at this time: we don't support any
>>>>  processor without a FPU and the PC-98 arch, which frequently =
involved i486
>>>>  CPUs, is also gone so we don't test such platforms anymore.
>>>=20
>>> What is realy mean?
>>=20
>> This means we don't do work-arounds that would be required for raw =
486.
>> Instead we will use the 586 instructions by default.
>=20
> This doesn't change that.  The kernel already has runtime tests in =
place
> for new things on 486 and later via cpuid.
>=20

Hmm ..then I am wondering if I effectively changed anything?

>>> Some Via CPU is like i486 (by instruction set).
>>>=20
>>> CPU: VIA Ezra (800.04-MHz 686-class CPU)
>>>  Origin=3D"CentaurHauls"  Id=3D0x678  Family=3D0x6  Model=3D0x7  =
Stepping=3D8
>>>  Features=3D0x803035<FPU,DE,TSC,MSR,MTRR,PGE,MMX>
>>>  AMD Features=3D0x80000000<3DNow!>
>>>=20
>>=20
>> 486 never had MMX extensions.
>> This is a 686, performance should improve ~4%.
>=20
> How did you measure the improvement?  Keeping I486_CPU doesn't really
> do anything except remove a some #ifdef'd conditionals in identcpu.c
> and initcpu.c.  It doesn't affect whether we use the TSC, MMX, etc.  =
Those
> are all runtime checks based the CPU feature flags from cpuid.
>=20

The number came out from an old posting involving buildworld times, =
which I can=E2=80=99t find now :(.
Things seem to have changed a lot: it was surely using GCC back then, I =
don=E2=80=99t believe clang does much distinction about 486 at all.

BTW, does it make sense to keep i586 in the configuration still? Both =
i486 and i586 were once removed but later re-instated in r205336.

Pedro.





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?D81029FA-61CF-4648-A2A8-8570DEF28B14>