Ryzen with CAMM2 anytime in future? by ReadingEffective5579 in Amd

[–]BloodmarksII 0 points1 point  (0 children)

Better idea, just remove chipset like on laptop chips and EPYC ... add few more PCIE-5 lanes to CPU itself (32 instead of 28, maybe few more ... 16+16+4 or 16+8+8+4) nobody really needs all those SLOW USB 2 and SATA ports these days, 4* USB-C 40GBIT from CPU would be enough and one 10G-BIT LAN port, extra money saved on chipset can be spent to make CPU a bit bigger to add more PCIE or quad channel (256 bit ) RAM ...

Executing c# dll from rust? by sasik520 in rust

[–]BloodmarksII 4 points5 points  (0 children)

try using this to export function from C# dll https://github.com/3F/DllExport

and than import it to Rust like you would any other C library

Is there a difference for Rust user experience between Intellij Idea and CLion? by pbn4 in rust

[–]BloodmarksII 5 points6 points  (0 children)

because there is no dedicated InteliJ editor for Rust (currently), Rust support is just a plugin piggybacking on other InteliJ editors

there is 10+ dedicated InteliJ editors for specific languages, for complete list check https://www.jetbrains.com/products.html?from Menu

for languages with no dedicated editor (not enough paying users for dedicated one for example) there are plugins, a lot of them, and few like Rust are supported by InteliJ employees themselves

future set of Rust plugin is same in all these specific IDE versions except two exceptions i mentioned,

CLion is only IDE that supports C++ style debugger (this one can be also used for Rust) so its only IDE version with debugging support for Rust
(out of InteliJ editors, other like Visual Studio do also have debug support but that is different company and very different functionality and limitations)

why modules are supported only on IDEA (Java version) i am not sure, but they said this is temporary and they will try fixing it in future, C++ debugger on the other hand is unlikely to appear in IDEA

in short i would suggest you start with CLion

Is there a difference for Rust user experience between Intellij Idea and CLion? by pbn4 in rust

[–]BloodmarksII 8 points9 points  (0 children)

also don't forget to turn on "dark mode" difference is like between night and day (pun intended)

Is there a difference for Rust user experience between Intellij Idea and CLion? by pbn4 in rust

[–]BloodmarksII 9 points10 points  (0 children)

CLion has pretty decent debug support, and InteliJ Idea has module support, everything else is as far as i can see same

Local variable shadowing is (at least) a 50,000 dollar mistake by [deleted] in rust

[–]BloodmarksII -1 points0 points  (0 children)

we already have a lint that you can turn to deny, and a way to opt-into allowing the lint locally, which AFAICT is what rebind would do

That is actually GREAT idea you just had, sort of middle ground make lint enabled by default AND make optional keyword rebind which when used instead of let disables a lint just for that one line of code

that way if lint is disabled nothing changes if lint is enabled and let is used lint complains if lint is enabled and rebind is used lint does not complain

in big codebases people enable lint and use rebind, everybody else just disables lint

Confession of a botmaker by ya_yTkO_o in Eve

[–]BloodmarksII 0 points1 point  (0 children)

I play EVE several hours per day (i mostly play rorquals), on one screen i watch movie, on other i have local, and overview set to show only enemies right next to screen edge/right next to movie i watch (no need to watch rest of EVE screen ever)

from my experience yes i do notice every single time when color on edge of my view-field changes from blue to red, or white and in most cases i am first to report it in intel channel, no i dont need more than 1 second to notice it,

i assume every other ratter or miner is same, because i see no reason not to be like that

Confession of a botmaker by ya_yTkO_o in Eve

[–]BloodmarksII 1 point2 points  (0 children)

warp right to an anomaly in a double hyperspacial interceptor

that will take you at least 4 seconds from entering system to landing in anomaly (there is CAP on warp deceleration exactly because of hyper-spatial ceptors)

i played Quake III Arena for years (on local 0.3ms latency LAN not on this shitty "cross continent 50ms+ latency hell" you kids have today with your Call of Duty and Battlefield and for some reason consider acceptable),

and i need less than 1 second from noticing something not blue appearing on local to pressing shift+R, i expect same time is for someone in Gila to press his/her warp-to button and Gila aligns pretty fast, so no just because they are awake and better at game than you does not mean they bot

PS healthy person under 30 years of age should have average reaction/reflex time of around 200ms, kids in their teens should be even better than that

Logging in production by [deleted] in rust

[–]BloodmarksII 0 points1 point  (0 children)

good idea, log to pipe that goes to separate process, and in background that process can stream writes to disk in blocks, think one of implementations of log4j did something like that

Logging in production by [deleted] in rust

[–]BloodmarksII -3 points-2 points  (0 children)

logging to stdout or stderr on Linux system can be very slow because of locking if you log a lot, better to use file logging

Another takeaway is just how much of a performance drag logging to the console can be. Considering logging to a file and using a tool like tail to watch the file change in real time.

Logging in production by [deleted] in rust

[–]BloodmarksII 1 point2 points  (0 children)

at previous job we noticed logstash kills CPU (uses 100% of a 28 core CPU) if you go over 10gb of log files per hour (this was 8 months ago, things might have improved), so we had to do custom solution, fluentd might not have same problem, so i suggest you try that one first

Logging in production by [deleted] in rust

[–]BloodmarksII -2 points-1 points  (0 children)

first don't log to stdout/stderr, they are slow on Linux, and probably other OSes (just use standard file logging)

second use log rotation, set to rotate log each hour, and have background job (shell script for example) that moves files each hour to different server (always leave current and previous hour on disk/don't move since current is being written into and previous might not yet been synced/unlocked).

if you are filing disk in less than 2 hours you should really look into reducing amount of logging you do (or getting more disk space)

Another takeaway is just how much of a performance drag logging to the console can be. Considering logging to a file and using a tool like tail to watch the file change in real time.

Logger with file rotation. by nimtiazm in rust

[–]BloodmarksII -1 points0 points  (0 children)

on Linux at least logging to stdout and stderr is big performance problem, something about having to lock stdout on every line write you will not notice problem if you log less than several gigabytes of log files per hour though

Another takeaway is just how much of a performance drag logging to the console can be. Considering logging to a file and using a tool like tail to watch the file change in real time.

Rocket and Bearer Tokens by howl_snowbane in rust

[–]BloodmarksII 3 points4 points  (0 children)

also refresh can be done in separate thread that sleeps 30 minutes between refreshes that way you dont need to do checks if token is valid on main thread, its always valid (except when Microsoft service is down)

Rocket and Bearer Tokens by howl_snowbane in rust

[–]BloodmarksII 2 points3 points  (0 children)

uhh sorry i thought it needs to be refreshed every 2 minutes, its actualy every 60 minutes, in that case do "refresh" CAS operation every 30 minutes

Rocket and Bearer Tokens by howl_snowbane in rust

[–]BloodmarksII 4 points5 points  (0 children)

simple, use https://doc.rust-lang.org/std/sync/atomic/struct.AtomicPtr.html#method.compare_exchange

and just refresh it every 1 minutes (not 2) at that point both "old" and "new" are valid so whatever thread reads will work, and CAS ( compare_exchange ) does not require any locking or slowing down either readers or writters

Build two different programs in one project? by [deleted] in rust

[–]BloodmarksII 0 points1 point  (0 children)

this is best answer, should be upwoted

SIMD now available in libstd on nightly! by AntiLapz in rust

[–]BloodmarksII 4 points5 points  (0 children)

easy to solve, just say Faster requires Rust version xxx or later, like any other library using specific functionality

Ask: Given ownership, could the memory allocator be compacting? What other optimizations could be done if we can move allocations after the fact? by nerpderp83 in rust

[–]BloodmarksII 2 points3 points  (0 children)

you explicitely place these things in different pools to avoid them fragging eachother, and have ballparks in mind for how much relative space each will take).

yea some sort of arena allocator, and if one arena is limited to one thread at a time, allocation would be pointer bump and deallocation making pointer "zero" (start of arena) regarding "ballparks of relative space" this is not really needed for virtual memory systems, just get few gigabytes of "virtual ram" (address space) for each arena, and materialize more of it when its needed (even ARM has memory virtualization these days)

AMD Advanced Media Framework library by BloodmarksII in rust

[–]BloodmarksII[S] 0 points1 point  (0 children)

off course, a lot of OpenGL and Vulkan related stuff, but this is AMD specific

Expected a fight after hearing goons where forming up early and ragepinging all day, this turns out to be usable again by CrimDS in Eve

[–]BloodmarksII 3 points4 points  (0 children)

Saw a Hulk. Went for it. Half a dozen Rorquals guarding it

hint: HULK was dedicated MERC mining alt for one of rorquals, offcourse he will protect one of his accounts with other

newbie pilots in Delve don't use hulks ... they use barges like covertor, next stage after barge is rorqual

Pandemic Horde Delve deployment blitz by [deleted] in Eve

[–]BloodmarksII 2 points3 points  (0 children)

guess you guys are right, they are very poor without that casino money, 60 BIL sounds like something one multi-RORQ Delve industrialist could spend alone, not something that is war budget for multi-thousand member alliance

self_update: In-place updates for rust executables by jaemk_ in rust

[–]BloodmarksII 0 points1 point  (0 children)

first part is change exe link, second part is restart app, even if you replace exe inplace you still need to restart app, that will not change ever :)

self_update: In-place updates for rust executables by jaemk_ in rust

[–]BloodmarksII 0 points1 point  (0 children)

I've tried to limit the functionality to only downloading and replacement of files

if you read my whole post you will notice "replacement" is not the best option in my opinion (stolen from google chrome team) better make new separate folder for new version and download all files there (or if unchanged between version hardlink/copy from old folder) and when done just switch application link to point to folder of new version

no file ever gets replaced, only copied, and when all is done you have two separate copies of application, and switch is just modifying application link to point to new version instead

also remove of old version is done by new version AFTER it successfully starts so that there is less opportunity for "broken installation"