From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2 autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 16154 invoked from network); 22 Aug 2021 17:29:33 -0000 Received: from tb-ob20.topicbox.com (173.228.157.66) by inbox.vuxu.org with ESMTPUTF8; 22 Aug 2021 17:29:33 -0000 Received: from tb-mx0.topicbox.com (tb-mx0.nyi.icgroup.com [10.90.30.73]) by tb-ob20.topicbox.com (Postfix) with ESMTP id A7D4D20033 for ; Sun, 22 Aug 2021 13:29:29 -0400 (EDT) (envelope-from bounce.mMf5ef60c88b77f937e3cd7c38.r522be890-2105-11eb-b15e-8d699134e1fa@9fans.bounce.topicbox.com) Received: by tb-mx0.topicbox.com (Postfix, from userid 1132) id 8EC953318D79; Sun, 22 Aug 2021 13:29:29 -0400 (EDT) ARC-Authentication-Results: i=2; topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=oat.nine.sirjofri.de; x-internal-arc=fail (as.1.topicbox.com=pass, ams.1.topicbox.com=fail (message has been altered)) (Message modified while forwarding at Topicbox) ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=date:from:to:message-id:in-reply-to:references :subject:mime-version:content-type:content-transfer-encoding :list-help:list-id:list-post:list-subscribe:reply-to :list-unsubscribe; s=sysmsg-1; t=1629653369; bh=w3g/LbzCtqGzk48f JxLIbrUueKWx7jt1kEdyQfa6l+8=; b=DtOzu+9cxfrsb5F6hSYq5bNzqIwdrQWG aSZb/7oYyu7gekDd+/SU2BXDnxL94yMy8f50TXsy/Gz8uwmg98hGMmwKw5Hq4ayS tzRrNbh19MFB4FcL/nIduzmYkbRgKrHJ0SnJ1muW6HIfTF4jtzmMVZFZUtnTUQJ8 B14wp3XInbo= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629653369; b=P7G7aRn6KufG0HKmJA99nRBCg0TeVe35Wmz07oCO6QhLJi2i14 duGTnbtBVYu+PswtiLmi5vQlQOVk2W9gNf916D7K4X4VXkVfwiE9gJbmwbOzoYPZ rXjBCJiUg2wuRZz4zekqEEW2xQXWqcAAUs89JgbPjxeMRvcrLdmVyKLGk= Authentication-Results: topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=oat.nine.sirjofri.de; x-internal-arc=fail (as.1.topicbox.com=pass, ams.1.topicbox.com=fail (message has been altered)) (Message modified while forwarding at Topicbox) X-Received-Authentication-Results: tb-mx0.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; iprev=pass smtp.remote-ip=5.45.105.127 (oat.nine.sirjofri.de); spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=oat.nine.sirjofri.de; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=oat.nine.sirjofri.de policy.ptr=oat.nine.sirjofri.de; x-return-mx=pass header.domain=sirjofri.de policy.is_org=yes (MX Records found: oat.nine.sirjofri.de); x-return-mx=pass smtp.domain=sirjofri.de policy.is_org=yes (MX Records found: oat.nine.sirjofri.de); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-SHA smtp.bits=256/256; x-vs=clean score=0 state=0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h=date:from :to:message-id:in-reply-to:references:subject:mime-version :content-type:content-transfer-encoding:list-help:list-id :list-post:list-subscribe:reply-to:list-unsubscribe; s=dkim-1; bh=w3g/LbzCtqGzk48fJxLIbrUueKWx7jt1kEdyQfa6l+8=; b=RI5VJMu7H95j zCS4w4hst0ZkSOAO374TO98quk5Sv6/feWsoFXjortYaBr3MeeqyqmfmGzUeDv5N htjUrHGHToXcH9A1ynLKH6evfK/RdFyjAFPegjlk/cV/xI0jJ0neho9XdQJw+uZz xjDBbVSIc7gzHZvBwl/Hk/xokr65fTA= Received: from tb-mx0.topicbox.com (localhost.local [127.0.0.1]) by tb-mx0.topicbox.com (Postfix) with ESMTP id CC1AF3318957 for <9fans@9fans.net>; Sun, 22 Aug 2021 13:29:19 -0400 (EDT) (envelope-from sirjofri+ml-9fans@sirjofri.de) Received: from tb-mx0.topicbox.com (localhost [127.0.0.1]) by tb-mx0.topicbox.com (Authentication Milter) with ESMTP id 0621155E934; Sun, 22 Aug 2021 13:29:19 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629653359; b=kPNlkTD2vUoikncPk33D+IQAqAtN6laX9RBW7FHJKWMfpewi07 DjkO139PPV8aJ6BKuaBPE2zGWSCpbT6bNCamHdOhACG5mtIiXIqa2o8smgi7f2U1 SIyikNufmwvC3pONEIMVEEeNnVckqsyCsM2uegrSSPgI4WLQZWxU1vM/788lz/Br KVu5cHckEpsEL0PCmv6xEhgEZS3UiWrBdWZkVvxsgnmeb3y2pMwUCPgBizxIIOoi Dw2e7pNMTMA+APUh/Yir06z+kmktjv6QheIe9ZDwbi3YFPW5cL0p75M8Zp8RKtg3 AjRlPYVc7vv4zlTRxorzxOVGdAQSwCCRYt6g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=date:from:to:message-id:in-reply-to:references :subject:mime-version:content-type:content-transfer-encoding; s= arcseal; t=1629653359; bh=J0UpDrbNJaZGYTfhb2qbRIx8pQWkw+xcDHQ7yy 1ylFg=; b=kcof64zfg7ykAUvyIdzHUaZcljnG5WMRaDbxmdbq7s1kzZz0OF4qNE siTMVakrzPimqFwQ0Aygfi+i2L9FxTJ4oC7Bdn6V8XK+yDC10Upgx+5nCkZ/fTE+ 2CGSvAv0Wt3B2VGjhhd1Ic0jjEr4ON925kvQYdUB4ymEQSF5ERue/ybGp8iyjR6O TWvIukNovIZ/5TlxTGjykkmAEtf22AXjxDac5G3xi7bZ+QqAY/A4pw6pf4kQBT87 rhkxuyN/93abSqnu47Mlbm3N4deaAAoKgZPAWRGwWxPdPenakkuZyjR7+ETdIZp/ uhgSVCnQbGWYhPeT8nHCGQFddZnaZ6qA== ARC-Authentication-Results: i=1; tb-mx0.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; iprev=pass smtp.remote-ip=5.45.105.127 (oat.nine.sirjofri.de); spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=oat.nine.sirjofri.de; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=oat.nine.sirjofri.de policy.ptr=oat.nine.sirjofri.de; x-return-mx=pass header.domain=sirjofri.de policy.is_org=yes (MX Records found: oat.nine.sirjofri.de); x-return-mx=pass smtp.domain=sirjofri.de policy.is_org=yes (MX Records found: oat.nine.sirjofri.de); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-SHA smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddtfedguddufecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpggftfghnshhusghstghrihgsvgdp uffrtefokffrpgfnqfghnecuuegrihhlohhuthemuceftddtnecunecujfgurhepfffhvf fkjghfufggtgfgsehtqhertddttdejnecuhfhrohhmpehsihhrjhhofhhrihcuoehsihhr jhhofhhrihdomhhlqdelfhgrnhhssehsihhrjhhofhhrihdruggvqeenucggtffrrghtth gvrhhnpeejvddtgeeuledvgfelteelfedvteeijeduveelgfehteejueehvdfhteekudev teenucfkphephedrgeehrddutdehrdduvdejpdelhedrledtrddvudekrddvudefnecuve hluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehinhgvthephedrgeehrddutdehrddu vdejpdhhvghlohepohgrthdrnhhinhgvrdhsihhrjhhofhhrihdruggvpdhmrghilhhfrh homhepoehsihhrjhhofhhrihdomhhlqdelfhgrnhhssehsihhrjhhofhhrihdruggvqe X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (sirjofri.de: 5.45.105.127 is authorized to use 'sirjofri+ml-9fans@sirjofri.de' in 'mfrom' identity (mechanism 'mx' matched)) receiver=tb-mx0.topicbox.com; identity=mailfrom; envelope-from="sirjofri+ml-9fans@sirjofri.de"; helo=oat.nine.sirjofri.de; client-ip=5.45.105.127 Received: from oat.nine.sirjofri.de (oat.nine.sirjofri.de [5.45.105.127]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by tb-mx0.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Sun, 22 Aug 2021 13:29:18 -0400 (EDT) (envelope-from sirjofri+ml-9fans@sirjofri.de) Received: from sirjofri.de ([95.90.218.213]) by oat; Sun Aug 22 19:29:15 +0200 2021 Date: Sun, 22 Aug 2021 17:29:14 +0000 (UTC) From: sirjofri To: 9fans <9fans@9fans.net> Message-ID: In-Reply-To: <38625C0884407D776FB7DB6F45B80CC4@eigenstate.org> References: <38625C0884407D776FB7DB6F45B80CC4@eigenstate.org> Subject: Re: [9fans] Drawterm GPU (was: Software philosophy) MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8"; format="flowed" Content-Transfer-Encoding: quoted-printable X-Correlation-ID: Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: 7e325a36-036e-11ec-9c32-f7b9e7467988 Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UYWQyOWJmYzIyM2RjNGZiZS1NZjVlZjYwYzg4Yjc3ZjkzN2UzY2Q3?= =?UTF-8?B?YzM4Pg==?= List-Help: List-Id: "9fans" <9fans.9fans.net> List-Post: List-Software: Topicbox v0 List-Subscribe: Precedence: list Reply-To: 9fans <9fans@9fans.net> List-Unsubscribe: , Topicbox-Delivery-ID: 2:9fans:437d30aa-c441-11e9-8a57-d036212d11b0:522be890-2105-11eb-b15e-8d699134e1fa:Mf5ef60c88b77f937e3cd7c38:1:H590PK3T35OZsRv2XhxFy7JZ14gYJm9oqJ5bv_OZDm0 22.08.2021 18:41:06 ori@eigenstate.org: > Quoth Paul Lalonde : >> Opinions on how to bring this to Plan9?=C2=A0 I don't really have any -= =20 >> it's a >> huge pile of work with minimal benefit.=C2=A0 If you're looking for=20 >> lightweight >> graphics, WebGL is a doable path, and almost certainly the right way=20 >> to >> experiment with Plan9-like interfaces to graphics hardware. > > It seems like the interesting part of GPUs > is the general purpose computation. Writing > an interface for pure computation seems like > the way to go. > > Hardware rendering is a restricted case of > software rendering; it seems like it would > be better to write code that could do software > rendering, and run it on the general purpose > compute engine of the GPU. The same goes for > basically everything else you may want to do > with a GPU. Basically do software rendering on the GPU? Well, it's totally possible. Even Nanite (the new system in Unreal Engine=20 5) has its own rasterizer and I believe even its own base pass. Also=20 Lumen does software rendering for global illumination. But for serious 3d AAA stuff we'd have to consider: Lumen is for next-gen=20 GPUs and Nanite for newer GPUs. We'll never reach their quality in=20 realtime if we don't use the GPU features (built-in rasterizer, ...) to=20 have enough free power for crazy software calculation. On the other hand, getting _any_ GPU computation running on Plan 9 would=20 be great, even if it's just compatible pure-CPU implementation (aka gpufs=20 without a GPU). > Spitballing a while ago on the grid, I came > up with something that looked a bit like a > batch job interface, with a heirarchy that > looks something like this: > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 /dev/compute > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0 new > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0 $func/new > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0 $func/$job/data > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0 $func/$job/result I like that /dev/compute approach, but may I suggest putting it below=20 another directory /dev/gpu/compute so we have the ability to add=20 /dev/gpu/{vertex,geometry,fragment,tessellation,pixel} later? I haven't looked at your sample script in more detail, but on the first=20 glance it seems solid. > Prototyping something like this as a 9p server > on unix would be interesting. So would providing > this kind of cpu interface in software. This is also a great idea, instead of tweaking drawterm. I don't have a=20 linux machine with a GPU (I'm full 9front and only windows for work), but=20 I guess if this prototype uses OpenGL (or alt) it could also work with=20 software GPU emulation. I'd really like to try something like that, but writing filesystems is=20 (still, sadly) new to me and I also don't have much time, being a=20 full-time game developer. If someone else wants to try it please make development open source so we=20 can provide patches, and I'm also happy to at least test things. > Hooking this up to devdraw would probably be > interesting for doing "hardware" rendering, though > latency may be an issue if it's not implemetned as > a local '#' device. I'm not sure about the latency (I would just try it once it's done), but=20 can't we use the hwdraw stub function for interfacing with this? I also=20 doubt we'll draw many complex shaders for /dev/draw. sirjofri ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tad29bfc223dc4fbe-Mf5ef6= 0c88b77f937e3cd7c38 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription