Re: PostgreSQL for VAX on NetBSD/OpenBSD

From: Johnny Billquist <bqt(at)update(dot)uu(dot)se>
To: Greg Stark <stark(at)mit(dot)edu>, Thor Lancelot Simon <tls(at)panix(dot)com>
Cc: Robert Haas <robertmhaas(at)gmail(dot)com>, John Klos <john(at)ziaspace(dot)com>, port-vax(at)netbsd(dot)org, vax(at)openbsd(dot)org, "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: PostgreSQL for VAX on NetBSD/OpenBSD
Date: 2014-07-17 15:04:49
Message-ID: 53C7E611.2060605@update.uu.se
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 2014-07-17 16:53, Greg Stark wrote:
> On Thu, Jul 17, 2014 at 4:45 AM, Thor Lancelot Simon <tls(at)panix(dot)com> wrote:
>> Except, of course, for IEEE floating point, because the VAX's floating point
>> unit simply does not provide that
>
> Actually I think that's relevant. We usually get focused on the
> concurrency because that's an area where architectures vary a lot but
> it sounds like VAX barely supports multiple CPUs and generally older
> architectures had fairly mundane concurrency semantics since they were
> designed to work with existing toolchains. From memory it wasn't until
> later Sparc chips and Alpha that people started to experiment with
> looser concurrency models and expecting the toolchains to satisfy
> complex constraints to make them work.

Well, VAXen support multiple CPUs just fine. However, NetBSD/vax barely
have support for it. That could of course change with time, as there are
plenty of multiple CPU machines around. We just need to add support for
them in NetBSD...

Also, VAX did not use CAS as the general paradigm for atomic writes and
so on, but have other explicit instructions that are guaranteed to be
atomic. NetBSD/vax don't use the VAX specific instructions, but emulates
CAS in the kernel instead. But I don't remember how that extends to
userland. It's obviously easiest if userland programs use the pthread
library functions, which are guaranteed to work right even in
multiprocessor environment.

Implementing your own spinlocks is of course possible, but a horrible
way to use machine resources in userland.

Johnny

--
Johnny Billquist || "I'm on a bus
|| on a psychedelic trip
email: bqt(at)softjar(dot)se || Reading murder books
pdp is alive! || tryin' to stay hip" - B. Idol

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Greg Stark 2014-07-17 15:27:41 Re: PostgreSQL for VAX on NetBSD/OpenBSD
Previous Message Alvaro Herrera 2014-07-17 15:02:27 Re: [v9.5] Custom Plan API