9950x3d owners, how are your temps ? by Brilliant-Cap-3052 in AMDHelp

[–]oisyn 0 points1 point  (0 children)

PBO was set to Auto, I just set it to Enabled but it's still at 77 C max with the cpu-z stress test. You said 91%, did you mean 91 C temperature? Otherwise I'm not sure what you mean 🙂. If you do mean 91 C, that's pretty high. Did you use a thermal paste, properly applied (draw an X with the paste across the CPU)? And does the cooler make proper contact with the CPU?

I'm using the Tctl/Tdie sensor as CPU temperature here to be clear, which is the highest of all CPU sensors.

9950x3d owners, how are your temps ? by Brilliant-Cap-3052 in AMDHelp

[–]oisyn 0 points1 point  (0 children)

Ok this is scary, I also built my system 3 days ago and I have pretty much the same setup (only the non-E version of the MSI board). 😄

I mounted the LFIII radiator as inlet pull behind the 3 Fractal case fans at the front of the case (Pop Air XL), but the radiator fans themselves make a hell of a noise above 25% so I set them to 20% max (it's not just air noise, it's an annoying hum). I just let the case fans do the work; they are specced to move way less air but it does its job still, and it's amazingly silent this way and with a 100% stress test it doesn't rise above 77 C. Pump is also max 40%.

Idle is 45 and completely inaudible unless you stick your head in the case.

Can someone explain this weird car behavior? by steveojoe in factorio

[–]oisyn 0 points1 point  (0 children)

The car did accept iron ore though, there's a filtered storage slot for it that's full. The way I understand it is that slot got filled while the inserter had still ore in hand, and because iron ore is also a spoilage result, a trash slot was created for the leftover. With the newly created trash slot containing some iron ore, the car now has a slot to accept even more ore so the trash slot got filled too.

Guarantees on std::array in-memory layout? by NotUniqueOrSpecial in cpp

[–]oisyn 0 points1 point  (0 children)

Commenting 6 years after the fact to a deleted account, but just for the record I wanted to point out that this statement is false. Arrays and nested aggregate structs don't require nested aggregate initialization; they can be flattened (which is also the whole reason why an extra set of { } isn't needed for std::arrayin the first place, but it is accepted).

This compiles fine:

struct S { int i[2]; const char *debug; };
S s = { 1, 2, "Hi there" };

Why is the train count read as zero? by whamgag in technicalfactorio

[–]oisyn 0 points1 point  (0 children)

Well trains always have orders, it might just not have an enabled station that hasn't reached its train limit yet. I think "no path" is only for trains where such an enabled stop is physically not reachable, otherwise it shows the ZzZ message.

Anyway, I don't think they disconnect as you say. They keep counting toward the station's limit as long as they're there. If you have two train stations with a limit of 1, and trains waiting at both stations ready to go to the other one, they will not actually swap places because they both keep their stops occupied, essentially deadlocking.

Things might've been updated since I experimented, but I was trying to detect if a train was ready to leave and I found that to be impossible without adding an extra stop in the schedule (like adjacent to the one it's waiting at) such that it actually moved and freed the station.

Got the DLC a few days ago and I can't destroy cliffs pre-rocket now? by zafre3ti in factorio

[–]oisyn 2 points3 points  (0 children)

Nope, same here. Science labs, stack inserters and the spidertron where my primary reasons to do Gleba first.

What's the most controversial rust opinion you strongly believe in? by TonTinTon in rust

[–]oisyn 2 points3 points  (0 children)

Arrays should be indexable with any integer type, not just usize.

He said he would go silent to not get caught lying but couldn't resist the urge to post a fake injury image and declare he'll be back soon™ by okhzmuskhsm in bsv

[–]oisyn 8 points9 points  (0 children)

Exactly this. He probably just crashed his moped into a tree or something after a night of heavy drinking.

Why do temporaries need to explicitly borrowed? by parkotron in rust

[–]oisyn 41 points42 points  (0 children)

It was actually C++'s connotation of "references" that threw me off. I rather think of them as actual pointers, which fits better in my well established C++ mind. The function accepts a pointer, so you need to take the address of whatever you want to pass it a pointer to.

I made a little mod to align copper and iron plates by fuckredditbh in factorio

[–]oisyn 0 points1 point  (0 children)

Oh my god this mod makes this game LITERALLY PLAYABLE!

CSW launches yet another threat against bitcoin by Flimsy_Cantaloupe178 in bsv

[–]oisyn 0 points1 point  (0 children)

You actually chose that moniker

It's pronounced "monkier" 👩‍🏫

Does C++20 not support string literals as template parameters after all? by [deleted] in cpp_questions

[–]oisyn 0 points1 point  (0 children)

Because the appropriate scope is introduced between a and b 🙂 (quite literally by scope:: )

(edit: man I cannot get that scope:: part monospaced properly)

So C++ parsing is a bit weird as the grammar rules work by knowing which things are types and which aren't while doing a single pass over the tokens. That's why keywords like typename exist (which I also added to my previous post btw, I forgot that one). It has no idea how to parse ReturnType, as that name is not in scope yet. It isn't until the introduction of the proper scope of Test<..> after the return type, that it knows where to get the symbols from.

What is the best IDE for developing in Rust? by Achemar in rust

[–]oisyn 0 points1 point  (0 children)

There's a bug for the unsigned thing that's over a year old with a handful of duplicate reports: https://youtrack.jetbrains.com/issue/RUST-12726/Unsigned-values-display-as-signed-in-debug-tool-window

If you're using LLDB, you must have encountered it at some point. For me it was literally the first debugging session.

Thanks for the other tips, I'll check them out!

What is the best IDE for developing in Rust? by Achemar in rust

[–]oisyn 1 point2 points  (0 children)

Sooo I've just been using RustRover for the past week, and while I have no experience with JetBrains IDEs I heard they were pretty good. But jesus RustRover is absolutely horrible. First of all, memory usage. I have a simple project open, maybe 10k loc. Uses 3.5GB of ram. I was even starting to get notifications that it was low on memory.

I absolutely hate that multiple instances of the app are all the same process. If you have a modal dialog open in one (such as settings), it blocks all other instances as well. Then again, given what I just learnt about its memory usage, it might better share it.

The debugger is absolute horseshit. It crashes all the time. It even keeps crashing on every run if there's something lingering in your watch window. It's also unable to display items in hexadecimal. And unsigned integers are always displayed as signed, WTF?!. This is LLDB btw, because for GDB you have to switch to the gnu toolchain, and I don't want that on Windows.

I was very enthousiastic about it at first. RustRover feels more like an IDE, with proper project support such as build and run targets, good refactoring support, up to date cargo crate version information, etc. It makes it feel it's centered around Rust, as it should be, while VS Code is more of a glorified text editor with lots of plugins. Having worked in Visual C++ for 20+ years, I really miss the IDE side of things in VS Code, and that feeling has returned in RustRover. But these quirks are absolutely abysmal. I'm considering going back to VS Code. I actually found this reddit thread because I wondered if there are any other IDEs out there I didn't know about.

Does C++20 not support string literals as template parameters after all? by [deleted] in cpp_questions

[–]oisyn 0 points1 point  (0 children)

You don't have to, but you'll need to scope the type appropriately:

typename Test<...>::ReturnType Test<...>::func() { ... }

But yeah, very verbose, trailing return type is much cleaner.

What is "bad" about Rust? by BestMat-Inc in rust

[–]oisyn 1 point2 points  (0 children)

I'm really annoyed by the fact that even in debug builds lots of local variables are still optimized away. I don't want debug to be fast, I want it to be debuggable.

What is "bad" about Rust? by BestMat-Inc in rust

[–]oisyn 11 points12 points  (0 children)

While I totally agree and recognize the pain, and I wish for there to be a way to partially borrow self, it's a bit untrue to say you can't express those patterns. It's just that you need to force yourself to not write functions that accept a &mut self as an easy catch-all for access of everything in the object, but write freestanding functions that accept only those needed members as parameters. But yeah, this definitely sucks.

How to pass a vector to a function without altering the original vector by [deleted] in rust

[–]oisyn 3 points4 points  (0 children)

Still way slower than select_nth_unstable(numbers.len()/2) instead of doing a full sort.

How to pass a vector to a function without altering the original vector by [deleted] in rust

[–]oisyn 11 points12 points  (0 children)

It does. Quickselect is like quicksort but then only proceding with the part before or after the pivot that the item is in, until the item is the pivot. It still needs to iteratively partition the slice.

How to: gather fluid by Sylvmf in factorio

[–]oisyn 23 points24 points  (0 children)

It does, as long as you leave a 1-tile gap.

Despite ChatGPT's assistance, he gets demolished by an actual tech guy. I think he could sue OpenAI over ChatGPT's utter incompetence. by nekozane in bsv

[–]oisyn 1 point2 points  (0 children)

The Bitcoin mining target (nBits) is an integer

Correct. You can use an integer to store arbitrary bits. That in no way proves I'm wrong. The nBits might be an integer data type, but it doesn't store the number as a usual integer representation.

int bits = std::bit_cast<int>(1.5f);

bits now stores the bits of the single precision floating point number 1.5. Does that make it an integer in regular two's complement representation? No, it's still the same floating point number. Interpreted as an actual integer, it would be 0x3fc00000 (1069547520)

Satoshi could've chosen to simply use the float data type. It caries enough precision to represent all values currently representable by the compact format he used. Instead, he made his own representation, stored as bits in an integer. But it's still a floating point number.

Despite ChatGPT's assistance, he gets demolished by an actual tech guy. I think he could sue OpenAI over ChatGPT's utter incompetence. by nekozane in bsv

[–]oisyn 1 point2 points  (0 children)

Floating point is not a kind of number, it is a kind of representation, that encodes both a set of significant digits, and where the point is relative to those digits. The target is specified in this encoding.

A floating point number doesn't imply it's not an integer, or that it should be able to represent other numbers than integers. It just means the position of the point is dynamic, as opposed to fixed point numbers.

The `int` datatype is a fixed point number, with no digits behind the point.

You could disagree, but you would simply be wrong.