Double and triple buffering are techniques in GPU rendering (also used in computing, up to double buffering only though as triple buffering is pointless when headless).
Without them, if you want to do some number crunching on your GPU and have your data on the host (“CPU”) memory, then you’d basically transfer a chunk of that data from the host to a buffer on the device (GPU) memory and then run your GPU algorithm on it. There’s one big issue here: during the memory transfer, your GPU is idle because you’re waiting for the copy to finish, so you’re wasting precious GPU compute.
So GPU programmers came up with a trick to try to reduce or even hide that latency: double buffering. As the name suggests, the idea is to have not just one but two buffers of the same size allocated on your GPU. Let’s call them buffer_0 and buffer_1. The idea is that if your algorithm is iterative, and you have a bunch of chunks on your host memory on which you want to apply that same GPU code, then you could for example at the first iteration take a chunk from host memory and send it to buffer_0, then run your GPU code asynchronously on that buffer. While it’s running, your CPU has the control back and it can do something else. Here you prepare immediately for the next iteration, you pick another chunk and send it asynchronously to buffer_1. When the previous asynchronous kernel run is finished, you rerun the same kernel but this time on buffer_1, again asynchronously. Then you copy, asynchronously again, another chunk from the host to buffer_0 this time and you keep swapping the buffers like this for the rest of your loop.
Now some GPU programmers don’t want to just compute stuff, they also might want to render stuff on the screen. So what happens when they try to copy from one of those buffers to the screen? It depends, if they copy in a synchronous way, we get the initial latency problem back. If they copy asynchronously, the host->GPU copy and/or the GPU kernel will keep overwriting buffers before they finish rendering on the screen, which will cause tearing.
So those programmers pushed the double buffering idea a bit further: just add an additional buffer to hide the latency from sending stuff to the screen, and that gives us triple buffering. You can guess how this one will work because it’s exactly the same principle.
The Breakthrough Listen search for intelligent life is, to date, the most extensive technosignature search of nearby celestial objects. We present a radio technosignature search of the centers of 97 nearby galaxies, observed by Breakthrough Listen at the Robert C. Byrd Green Bank Telescope. We performed a narrowband Doppler...
The Breakthrough Listen search for intelligent life is, to date, the most extensive technosignature search of nearby celestial objects. We present a radio technosignature search of the centers of 97 nearby galaxies, observed by Breakthrough Listen at the Robert C. Byrd Green Bank Telescope. We performed a narrowband Doppler...
If i run X.org i dont need to modify my kernel or its configs, it just works well (well, well for X.org) out of box. With wayland its the other story. I need to enable nvidia-dkms module and much other stuff to should be configured. There is a whole page about enabling hyprland on nvidia....
I’m guessing that you’ve been using kernels from packages provided by your distribution and its maintainers simply haven’t decided yet that Wayland is used wide enough to put things it needs into default kernel. But that’s just a matter of time.
On distribution I use, for example, I did not have to compile my own kernel when I decided to check Wayland out. But that’s only because kernel package maintainers of my distribution have decided to enable it earlier
At least the parts that are mentioned in performance tweaking guides that instruct users to edit config files and the parameters are all named bTemporalAA_idTech7=0 etc.
From a hiring standpoint? Unless we have our filters set up for it (and we almost never do because CV parsing is horrible), the most this would map to is “So why did you leave this job after only 6 months?”. Which, to be fair, you need a good answer for. Because, to me, that reeks of “Cool. By the time we finish training you you’ll be putting in your notice”
Lack of meaningful job/opportunities: It sounds like you got an entry level position. You can either stay there or look to move to a different department in the company. That is how companies work. In large part because… see above. Getting someone up to speed on the critical path or to do interesting work takes time and a lot of people are just looking to get a year or so of something on their CV and move on.
And a divider before we enter the doozie
Your attitude: Honestly? You REALLY pissed me off with
but some of these processes involve going through Excel files which can take these bots 10s of minutes, which can be done instantly in any scripting language.
Yeah, check yourself with that shit. Let’s break it down
Unoptimized workflows: Welcome to the world of technical debt. In a perfect world, you would stop everything, do some research, and develop a new workflow. In reality, stopping everything costs money. Because operating at even 40% efficiency is still better than 0%
Why not script it?: Mostly the same as above. Spreadsheets are incredibly useful from a data entry perspective and a lot of data may need to be isolated to the degree that setting up proper databases (that you can then query) aren’t worth the effort. And if the documents aren’t standardized, you need a much more robust script or to spend time standardizing. And the document used by department A may have significantly different needs than the one by B
(implied) Okay, I just scripted it, use my work: Yeah, no. Because people have a tendency to bail and leave horrific workflows for everyone else to need to puzzle through or pass along like they are in the Mechanicus and performing rites on a machine. There are ways to encourage change, but they usually involve a proof of concept implementation that is INCREDIBLY well documented and detailed. Because it needs to be able to survive the “hero programmer” leaving. Different scope, but the number of times I have had to explain to someone that we aren’t merging in their TMP hell because we would rather take the performance hit (which is arguable with template metaprogramming, but I am not having that fight right now) on code we can maintain than merge that in.
“these bots”: Yeah, you are being an asshole. You are insulting your co-workers (who have the same job as you…) because they don’t meet your standards for a job that you already planned to use as a stepping stone to goof off and learn new skills. Ignoring that you are a fool if you think your shit don’t stink: You are guaranteed a lot less subtle than you think you are. People can recognize that and it makes them not want to deal with you, give you more of the charlie work, and ignore you for any opportunities. Because why would they trust the person who doesn’t want to be there with something actually important?
This must be a custom random function, because it’s standard for random to return a float between 0-1 exclusive. Maybe you meant to multiply by 100 instead of modulo.
The || version is older and has the value of $b if $a is any false value including undef (which is pretty much Perl's null/nil).
The // version has the value of $b iff $a is undef. Other "false" values carry through.
Ruby took both "no return required" and "no final semicolon required" from Perl (if not a few other things), I think, but it seems that // was Perl later borrowing Ruby's || semantics. Interesting.
i.e. 0 || 1 is 1 in Perl but 0 in Ruby. Perl can 0 // 1 instead if the 0, which is a defined value, needs to pass through.
Returns a if a is truthy and then checks if b is truthy. If neither are truthy, it returns b.
Not quite. If a is not truthy, then the expression a or b will always return b.
So, there is never any reason to check the truthiness of b.
you can paste this in your repl to confirm it does not.class C: def __repr__(self): return [k for k, v in globals().items() if v is self][0] def __bool__(self): print(f"{self}.__bool__() was called") return False a, b = C(), C() print(f"result: {a or b}")::: spoiler output a.__bool__() was called result: b
To quote the Simpsons: “0% is a percentage as well!” And that will be more than enough for politicians who know nothing about the topic and are blinded by the hot tech-buzzword of the minute (especially if it turns out they or some of their friends can make a shitload of money with it. I love capitalism and democracy.)
With 0 experience with linux i installed nobara without any problems. I didnt need to install anything else(edit: excluding the software you can install in the “welcome” app), to change something in the settings etc
The only “hard” thing i had to do was to disable secure boot in the BIOS
If the owner did they occupy a class position as a worker and owner.
Yup. Employers are entitled to a portion of total revenue proportional to the value they added. In the case of employers who perform necessary work, including administrative/clerical work, this can be a healthy sum. In the case of employers who solely fit the capitalist role of investor, this amount is $0.
You'd only treat playing tennis as attack rolls on the ball if you were trying to damage it, which I presume you're not. What it would actually mean is that anyone coud eventually break a tennis ball by trying to crush it. But tennis balls do eventually break with enough use anyway, so if you do want to handle it that way then the problem just lies with the fact that we don't have a way to make attacking something have a chance of success between 0% and 5%. That seems more reasonable to me than a brontosaurus being completely unable to squash a tennis ball by stomping on it, which is what immunity would mean
I don't think it's fair to say I've moved the goalposts. My original point was that force damage is poorly defined and described in game, which I stand by whether it should be distinct from bludgeoning or not; I'm not saying all force damage should just be bludgeoning. Only the examples where it's clearly extremely similar to stuff that already does do bludgeoning. There is no actual description of the effects of force damage available, and many notable things that deal force damamge seem to be described in a way that would imply B/P/S damage. Bringing up AC is just me explaining why I think your example doesn't work. What you're describing already has a mechanic in game that is not related to damage types.
Magical B/P/S damage is pretty reliable. Magical bludgeoning is only resisted by about 50 published creatures, a good number of which are swarms, so it's still almost as reliable as it is with force damage. Not to mention that the best part about magic missile is causing multiple guaranteed concentration saves, and that still happens if the target has resistance. A bludgeoning magic missile would even get to work with the vulnerability to that damage type that most skeletons have! And if that really does make the spell too weak to be useful... okay, buff it? Have it do 1d6+1 instead of 1d4. I don't think you'd need to, but it's clearly no trouble to make it stronger. Of course, you don't need to make everything that does force damage into bludgeoning anyway. Have eldritch blast do different damage types depending on who your patron is, that'd be cool.
If you really think that losing a specific damage type that almost never interacts with resistance, immunity, or vulnerability, you could just give whichever attacks and spells you wanted a trait that says it ignores those things. That way everyone is actually clear about what it does too, rather than just expecting players to gradually learn enough of the Monster Manual and other books to realise that force does that. What we gain by dropping force damage is an easier time for DMs to properly describe injuries and more reason for everyone to actually pay attention to what damage types work against different targets (indirectly buffing sorc's metamagic feature to change damage types too, since the elemental damage types are no longer strictly outclassed by force damage). All I want for this option is a clear definition of what the damage type does that is actually supported by the flavour text and mechanics. At the moment it's weird that I'm not "supposed" to desribe steel wind strike, which literally requires the caster to wield a melee weapon, as actually cutting anything
These aren’t all versions per se but mostly variants, versions and versions of variants. For example, we have packaged the xanmod kernel which is a modified kernel optimised for desktop use but it has two variants: Main and LTS. We have packaged both.
Here are the names of all of our kernels currently to give you an idea (as a JSON list):
This is useful to have because users might have hardware constraints. It’s not hard to imagine a scenario where a user might have a WiFi chip that only works with kernel ABIs < 5.4 and require the 470 nvidia driver for their old GPU. Packaging just the latest kernel and just the latest Nvidia driver would make this user unable to use their system.
GNOME's Dynamic Triple Buffering "Ready To Merge" (www.phoronix.com)
QEMU Release 8.2 (wiki.qemu.org)
QEMU is a generic and open source machine emulator and virtualizer....
The Breakthrough Listen Search for Intelligent Life: Technosignature Search of 97 Nearby Galaxies (arxiv.org)
The Breakthrough Listen search for intelligent life is, to date, the most extensive technosignature search of nearby celestial objects. We present a radio technosignature search of the centers of 97 nearby galaxies, observed by Breakthrough Listen at the Robert C. Byrd Green Bank Telescope. We performed a narrowband Doppler...
The Breakthrough Listen Search for Intelligent Life: Technosignature Search of 97 Nearby Galaxies (arxiv.org)
The Breakthrough Listen search for intelligent life is, to date, the most extensive technosignature search of nearby celestial objects. We present a radio technosignature search of the centers of 97 nearby galaxies, observed by Breakthrough Listen at the Robert C. Byrd Green Bank Telescope. We performed a narrowband Doppler...
Why I need extra kernel modules to be able to run Wayland on nvidia?
If i run X.org i dont need to modify my kernel or its configs, it just works well (well, well for X.org) out of box. With wayland its the other story. I need to enable nvidia-dkms module and much other stuff to should be configured. There is a whole page about enabling hyprland on nvidia....
What were some good things humans achieved in 2023?
Anything exciting going on in your field of work this year? Or breakthroughs in science, new technologies developed, things like that.
Dev behind massive Skyrim multiplayer mod turns their hands to Starfield, gives up because "this game is f***ing trash," uploads everything for someone else to finish (www.gamesradar.com)
deleted_by_author
Really makes you think rule (lemmy.world)
IMPACT announces "The Rainmaker" Kazuchika Okada for TNA's January 14th show 'Snake Eyes' in Las Vegas. (twitter.com)
What the hell is Okato doing in the Impact Zone?!...
NYT Friday 12/08/2023 Discussion
Link to crossword: www.nytimes.com/crosswords/game/daily
ich🧓🦆iel (feddit.de) German
know the features of your language (lemmy.world)
UK proposes selfie-based, AI age verification system for porn sites (www.techspot.com)
TC on open source evangelists (lemmy.ml)
[email protected] - Oh my gosh I just figured it out....
Know your enemy (lemmy.ml)
What country are you using lemmy from?
;-)
Whats your such opinion (discuss.tchncs.de)
Manjaro OS
So I’ve been iso live testing Manjaro KDE Plasma lately and it looks very polished....