Not exactly "small" ( a relative term), but still fits in a pocket, I use the Garmin Oregon 450. A wrist mounted GPS might be usable, but I don't like something on my wrist. The state of the art for wrist mounted units is "bulky" if you ask me.
I keep mine in my zippered pocket when kiting in a water tight bag. That also has the advantage of making the GPS float should it get away (the bag itself has flotation built in). I don't know of any GPS that might float, mine certainly won't.
That Garmin unit has the distinct advantage of re-syncing to the satellite signals almost immediately after losing signal if I go down. Any GPS will lose signal in a cm or less of of water. Also, even though my body shields at least half the sky, that is never a problem, that model has a very sensitive receiver so satellites on one side of the sky are more than enough.
Accuracy is superb. It claims 20 feet, but I routinely experience better than that. I know after I lay my tracks down on Google earth, and it's obviously nailing it to within better than 20 feet. There is a ~10 foot wide channel I kite right down the middle of, and you can see it on google earth.
It logs speed, of course, and track points every so often (programmable). It is very accurate for speed, so if you ever wonder how fast you can go, that'll tell you to within 0.1 mph.
I've got the tide tables in the unit, so I can find out exactly what the tides are wherever I go. Also, marine charts, so I can get an idea of where things are if necessary. However, it's impractical to use it as a navigation tool on the go unless you can do something like mount it to the bar - which I'm working on. It must be an exceedingly strong mount point or it'll get tossed and lost.
In another few years, all the features and sensitivity in the Oregon 450-like units will be crunched down into the size of a small wrist watch, but for the time being, it does the job well.