[HN Gopher] It All Started with a nop
___________________________________________________________________
It All Started with a nop
Author : JNRowe
Score : 48 points
Date : 2024-07-11 15:07 UTC (5 days ago)
(HTM) web link (christian-gmeiner.info)
(TXT) w3m dump (christian-gmeiner.info)
| st_goliath wrote:
| The Vivante family of 3D GPUs are available as IP cores,
| developed by the same named company[1].
|
| Vivante GPUs are used in some ARM SoCs like the NXP i.MX6 and
| i.MX8.
|
| Etnaviv is the name of the reverse engineered FLOSS Mesa driver.
| It's support for OpenGL/ES features is sadly lagging quite a bit
| behind[2].
|
| This article discusses shader compilation and _ISA documentation_
| in the Mesa driver using auto-generated code from a high-level,
| formal specification of the instruction set (in XML), rather than
| a tons of hand-written C code. A merge request for auto-generated
| ISA documentation is currently pending [3].
|
| [1] https://en.wikipedia.org/wiki/Vivante_Corporation
|
| [2] https://mesamatrix.net/
|
| [3]
| https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23...
| throwway120385 wrote:
| Vivante GPUs are the only godawful thing about i.MX. I hate
| having to get NXP's BSPs to use the official, higher-
| performance driver. On i.MX6 the supported kernel was released
| over a decade ago, which makes it tough to upgrade glibc.
|
| Sometimes I miss not having to do graphics in embedded systems.
| an_d_rew wrote:
| Alastair Reid has also done quite a bit with formal verification
| and specification of the ARM instruction set:
|
| See https://alastairreid.github.io/using-asli/ and cross-
| references there in
| interpunct wrote:
| My professor for Compilers 101 in grad school tasked us with
| working on an Ada subset compiler. I work best alone, but he
| insisted on making me work on a team. My experience with "teams"
| in college was a couple of us doing the work, and others
| claiming, "We worked on the organizational aspects and wrote some
| tests, so we didn't have much time for meetings or coding."
| Anyway, punster that I am, I told the prof that our team was the
| "NOOPs" (we spelled it differently back then).
|
| So my group's project was writing the VM in C, and only two of us
| contributed as predicted. Our VM passed the prof's test suite
| (actually written by our adversary, "Team Lambda", IIRC). So I
| have a "It all started with a NOOP" story too.
|
| This prof really was a genius himself and an expert in his field.
| He introduced many of us to the wisdom of Knuth. Our professor
| once recounted a story about having written an earnest letter to
| Knuth asking, "I know you are busy, but do you have time to do a
| lecture on compilers for my class?" He received back in the mail
| the original letter and envelope, enclosed in another with the "I
| know you are busy" underlined. My puns are kind of dumb, so I'm
| not sure he ever understood what I meant. He did ask us what our
| individual contributions were, and proof there of. My teammate
| followed me to State U.'s security headquarters begging for some
| of my test cases.
|
| Have a nice day everyone!
| vsuperpower2021 wrote:
| I had similar experiences with every group project, where one
| or two people have to do all the work. I asked a teacher about
| it once, and his explanation is that it's a lesson for working
| in the real world. Really drives home the saying "those who
| can't do, teach". I think it would have been more moral to do
| what your teacher did and actually validate contribution,
| instead of intentionally teaching students that you can screw
| around at someone else's expense and get away with it.
| powersnail wrote:
| Back in college, for 90% of the "team projects", I just
| assumed that I had to do all the work solo, and nobody else
| would contribute.
|
| One of my friend had a 3-person team, and one of the teammate
| kept procrastinating, and one day before the deadline,
| decided that he would just take a "fail", leaving the other
| two teammates completely in despair. It was a hardware-
| related project and without 1/3 of the work, nothing could be
| bought together at all. And the professor didn't give a shit;
| they had to beg to get a 60/100, despite having done their
| work perfectly.
|
| The big difference between group projects and real life work,
| is that the professors don't really have a stake in whether
| the work is being completed. In real jobs, the boss would
| really care about it if one of the colleagues just refuse to
| work and cause the whole product to fail to launch.
| jancsika wrote:
| How does isaspec affect the effort to get better OpenGL/ES
| support?
|
| I'd like to use FF webrender on a device that uses the
| GC7000Lite. Without webrender a lot of the web just takes too
| long on layout.
| housel wrote:
| At a previous employer we generated assemblers and disassemblers
| for various DSP cores based on an Excel spreadsheet that the
| software tools team shared with the processor architects. The
| spreadsheet cells described the layout of the various instruction
| fields; this was converted with a script to an architecture
| description DSL, from which the assembler, disassembler, and
| other tools could be generated. Another DSL described the
| pipeline stalls and hazards, and code generated from the combined
| descriptions drove instruction schedulers and code checkers.
___________________________________________________________________
(page generated 2024-07-16 23:01 UTC)