Disclaimer
See http://docs.google.com/View?id=dcxddbtr_23cg5thdfj for photo credits.
Monday, August 22, 2022
Tuesday, February 22, 2022
RISC-V extension names considered harmful
This is a special case of "stupid nonhuman friendly names considered harmful".
RISC-V, like any instruction set, as extension. The extensions need names. The current standard names are stupid and human unfriendly.
For example, I just now see email that talks about "working through the process to move Svnapot aka the former Zsn to public review". I am the guy who originated the RISC-V NAPOT proposal for large pages. *I* had to do a double take to parse Svnapot - but at least "NAPOT" appeared in there somewhere, after I mentally parsed Svanapot into S.v.napot, where S = system, v = virtual memory, ...
The earlier name Zsn, I could never remember - and, again, I contributed the term NAPOT to the virtual memory discussion.
Stupidly short and obscure names had friction. They waste mind share.
other RISC-V extension names include
Zicsr
Zifencei
Zam
Ztso
Some of these you can guess about what they apply to.
Ag comment: have verbose and compact names
Z-atomic-memory-operations ==> Zam
and so on
---
Did I mention that 1 of the reasons given for short obscure extension names was that they needed to fit within 8 or whatever characters on the command line processor for compiler?
Do It (All) Upfront vs Do It As Needed
Two different styles of getting work done:
When I started as a professional programmer, e.g. writing C code for PC hardware, one of my "superpowers" was that I might find a hardware manual for a device, e.g. a UART, and I would write a fairly complete implementation, e.g. a header file that had #defines for all of the encodings used write control registers that device.
I.e. I did it all upfront. actually not all, but I did a lot upfront.
This served several purposes
- it was a good way for me to study the device, hardware, software interface that I was using
- compared to only implementing what I needed at the moment, it meant that when I realized I needed something else I usually did not have to stop to look at the manual. I could usually just pick the typical name that I would use out of midair and coded and it would work
- completely decoding so that you can provide a full disassembly of all instruction
- but not necessarily implementing them, if the implementation is too complicated
- I start by googling for keyboard shortcuts for the application in question. when I find them, it is usually a fairly simple set of text edits to convert them into a primitive command set.
- I start using things, and over time I observed the need for new commands
- One of the key things to record commands that I want to say but which are errors
- When I would like to have a speech command to do something that is currently on a menu tree
- I will typically take screenshots of menu tree, and device commands appropriate to each of the leaves
- e.g. I said "... insert line...." and there was no insert line command
- so I had to navigate through the menus " drawing > shapes > use arrow keys to select the graphic line shape"
- I'm really glad that I'm using speech recognition. It is very much helping my computeritis pain.
- But I sometimes despair every time I need to write a whole new set of commands
- I would like to accelerate the process.
Monday, August 17, 2020
WANTED: better security => fewer updates => better reliability
Wasted two hours this morning: when I started, neither the builtin keyboard nor the trackpad of my Surface Book 3 were working. Fortunately, the touchscreen was working, but it is hard to do real work without a real keyboard.
Fruitless fix recommendations from the web, eventually uninstalled recent Windows updates, and after a few reboot cycles keyboard and trackpad were working again.
Most recent updates were four days ago. I remember wondering if I should delay the update. but the desire to use recent security fixes won out.
I do not know with the certainty that the updates caused my problems this morning. It might've been a coincidence, a random disk error.
But... I feel pretty much sure that I wouldn't be applying updates anywhere near as frequently if there were not security issues. Otherwise, why breaks things that are working? and software updates are one of the biggest causes of computer problems, both for me and for other people.
This is one of the reasons why I work on security technologies like capabilities/checked pointers and memory tagging: not just security, but also to increase reliability.
Of course security and reliability go together. The very concept of a denial of service attack means that security is reducing reliability and availability. But it's not just DOS attacks - the very act of a software update, for security, reduces reliability.
---
Unfortunately, I never really got to see my security projects to completion at Intel: MPX is a piss poor version of what I wanted to do with respect to capabilities/checked pointers.
I hope that I can such security technologies become real as part of RISC-V.
Thursday, August 13, 2020
Spicy Food Cures Bad Allergy Attack !?!
BRIEF: multi-day allergy attack seems to have been cured by spicy food !?!
A couple of days ago I went for a run in the evening (OK, more like a jog/walk), and came back with a really horrible allergy attack. My left eye almost completely swollen shut, my right eye sore, my nose running. Inhaler helps with wheezing, but not with the other symptoms.
I had been planning to work later that evening, at least read email, but I lost the rest of that evening, the entire next day, and into the day after that. Not to mention losing two nights of sleep, propped up for drainage. Using a CPAP is disgusting when the mask fills up with nasal drainage. (Not mucous - that would be really disgusting - but still.) Working when your eyes are swollen shut is also a challenge.
Things eased a bit by the second day, but still bad. I consulted Dr Google. Home remedies recommended included
- Flush - e.g,. with a Neti Pot
- Spray - e.g. Afrin decongestant spray, or simple saline
- Hydrate
- Steam
- Spice
But that last suggestion: SPICY HOT FOOD. That I can do.
So I did: a package of vegetable korma, augmented by sriracha and other hot sauces. And, within an hour or so, I was much, much, better.
Next time, I try the hot sauce as soon as I feel the allergy attack coming on! I wish I had not waited so long.
---
Other:
I was desperate enough that I drove to the coast to try to escape the Willamette Valley's cloud of pollen and dist from haying, winnowing, and field burning. Helped, but not enough. BTW, it may not have been smart to drive with one eye swollen shut and nose running. I was desperate!
During the attack one particular place in my nose BURNED - as if I had inhaled a prickle burr and it had stuck. Even now, days later, I still feel this hot spot.
---
Posting this
a) As a sad commentary on my current lack of social life. This is the sort of thing you might mention in the break room at the office.
b) As a reminder to myself for next time
c) In the hopes that it might help someone else... My blog is unlikely to be high in Google searched by a fellow sufferer. TBD: find a newsgroup or forum for allergy sufferers.
Sunday, June 21, 2020
ISO bicycle turn signal SYSTEM - wireless controller, pairable with multiple signal lights/colors/
- E.g. on the rear so that not hidden when I am carrying a full load of cargo;
- on the seatpost;
- on the handlebar ends;
- possibly integrated in rearview mirrors mounted on handlebar ends
- Less common
- ?pedals?
- ?front facing turn signals?
- sideways -- e.g. wheel lights.
Friday, June 05, 2020
If only we could donate platelets every 6 days rather than every 7 days
It is a pity that this minimum spacing cannot be every 6 days. I can really only donate on weekends, Saturday and Sunday. But if I donate on Sunday one weekend I cannot donate on Saturday the next week - too close. The only way I can switch back to donating on Saturdays is to miss a week.
Does it really make that much of a difference?
--
Imagine that on even weeks I can donate on Saturday but on odd weeks I can good donate on Sunday. With the 7 day rule the number of donations I can make is reduced by 33%, compared to being able to donate every week as would be allowed if the separation were 6 days. That's more than the 1/7th you might naïvely expect.
Such phenomena of quantization are common in computers. E.g. on P6 our 4 cycle FP multiplier and 3 cycle FP adder shared a pipeline. If we had not stretched the latency of the adder to 5 cycles we would have lost a lot of compute bandwidth.