Messages in this thread | | | From | Paul Gortmaker <> | Subject | Re: asm/uaccess.h reimplementation, patch. [was: Re: 2.1 kernel bloat revisited] | Date | Mon, 31 Mar 1997 12:47:15 +1000 (EST) |
| |
[Results for access_ok() = 1 , plus dummy push/pop follow ]
> > > > With access_ok() defined to "1". > > > > ------------------------------------------------------------------------ > > Memory: 4192k/5504k available (528k kernel code, 384k reserved, 400k data) > > > > 119.980u 77.100s 3:26.28 95.5% 0+0k 0+0io 139pf+0w > > 118.220u 75.850s 3:22.73 95.7% 0+0k 0+0io 129pf+0w > > 115.770u 76.050s 3:23.03 94.4% 0+0k 0+0io 131pf+0w > > ------------------------------------------------------------------------ > > > > > > With access_ok() doing what it is supposed to do: > > > > ------------------------------------------------------------------------ > > Memory: 4152k/5504k available (564k kernel code, 384k reserved, 404k data) > > > > 124.380u 109.470s 4:04.16 95.7% 0+0k 0+0io 187pf+56w > > 120.510u 111.490s 4:00.93 96.2% 0+0k 0+0io 142pf+0w > > 119.580u 109.490s 3:58.02 96.2% 0+0k 0+0io 133pf+0w > > ------------------------------------------------------------------------ > > ugh. Ok, here is a patch that simulates the syscall overhead of my > previously mailed %fs scheme (keep access_ok() == 1):
[...]
> very curious what your benchmark says about this one. [btw, the patch adds > a bit more overhead than necessary]. The patch is untested but if >this< > patch goes wrong i have to quit hacking for a few days ... :)
Well, with the extra push/pop dummy ops in there, the difference is nearly lost in the noise:
121.180u 76.660s 3:26.68 95.7% 0+0k 0+0io 137pf+0w 119.840u 76.970s 3:25.48 95.7% 0+0k 0+0io 129pf+0w 117.970u 80.550s 3:30.09 94.4% 0+0k 0+0io 112pf+0w
Avg of 3:24.0 vs. 3:27.4 with a noise of about +/-3 seconds). Still about 30 sec better than the current access_ok(). Will have to see if the percent differences are of equal magnitude on 486 boxes, or if the existence of L1 cache changes things vs. the above 386 #'s.
Paul.
| |