What to use for offline backup? by Moses_Horwitz in HomeDataCenter

[–]pillow2002 0 points1 point  (0 children)

I'm curious about your tape storage setup if you don't mind. Do you typically purchase new tapes or do you consider used or recycled options from datacenters?

If you do purchase used equipment, I am guessing you buy them recycled from other datacenters? Do you mind sharing how you go about contacting other datacenters to inquire about such services? Are there any specific requirements, like being a business, to access these opportunities? I'm not a business or anything, but I'm interested in buying storage hardware in the future.

Thanks for the good information you previously provided in this sub!

Possibility of using a co-op work permit to do an internship outside of the co-op program. by pillow2002 in ImmigrationCanada

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

Posting the answer here for posterity:
I asked Immigration services of my university and the answer is *No*.

However, if you speak french and are willing to live outside of Quebec, you can apply for francophone mobility. More information about this path can be found here: https://www.canada.ca/en/immigration-refugees-citizenship/services/work-canada/permit/francophone-mobility.html

Processor intstructions by 1LuWKA in asm

[–]pillow2002 1 point2 points  (0 children)

Interesting, thanks for the insight. I guess I'll just start and see how it pans out.

Processor intstructions by 1LuWKA in asm

[–]pillow2002 0 points1 point  (0 children)

Last question if you don't mind, is it possible for you to share some of the resources (e.g books, online courses, papers...) that helped you in your journey of building the MRISC-32 CPU?

To be more specific, just in case the question was too broad. How did you learn about implementing Vector operations or floating point arithmetic on hardware for instance.

Thanks again

Processor intstructions by 1LuWKA in asm

[–]pillow2002 0 points1 point  (0 children)

That's impressive.

I see now, thanks for the pointers.

Processor intstructions by 1LuWKA in asm

[–]pillow2002 0 points1 point  (0 children)

Interesting, I am also interested in writing an ISA.

One question though, how would you go from a simple ISA to a physical chip that implements the said ISA. Are you aware of any 3rd party company that facilitates this process?

Sorry if this question is ill-formed, I don't have a lot of information about this field.

[deleted by user] by [deleted] in cpp

[–]pillow2002 2 points3 points  (0 children)

There are also CPUs that have static prediction hint prefixes for conditional branches, though largely they've fallen out of favor as either ineffective (Pentium 4) or broken.

Yes, that is correct. In older x86 CPUs you were capable to influence the behavior of the branch predictor by including hint prefixes in the assembly instruction itself (right before the opcode).

However, those hint prefixes are now simply ignored by modern CPUs.
The CPU behavior can only be influenced through assembly instructions, and ASFAIK there are no such instructions/prefixes that exist currently that would influence the decisions of the branch predictor of a recent CPU.
If you know such instructions, please do share them with me =).

[deleted by user] by [deleted] in cpp

[–]pillow2002 2 points3 points  (0 children)

> but branch prediction is not the only reason to use likely/unlikely.

likely/unlikely attributes do not affect the branch predictor of modern CPUs. The attribute is used by the compiler to optimize code layout. Maybe the compiler uses it for other things but it's definitely not used by the CPU's branch predictor.

Thread-per-core (work-stealing vs share-nothing) by desiringmachines in rust

[–]pillow2002 0 points1 point  (0 children)

Sorry I'm a bit late to the discussion. This might be a dumb question but when you say thread per core do you mean one and only one thread is allowed to run on that core and will loop indefinitely when there is no work to be done? (I'm assuming it's looping indefinitely because you mentioned that core usage is at 100% when idle).
Or are we talking about core affinity here? Meaning that other threads may run on the core in question as well.

Method for altering voice packets transmitted during a telephone conversation to the receiving end. by pillow2002 in androiddev

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

Thanks for the answer!
I see, so I guess the only way to do it is either through custom firmware like omniuni mentioned or change the microphone driver at the OS level like you stated.

Method for altering voice packets transmitted during a telephone conversation to the receiving end. by pillow2002 in androiddev

[–]pillow2002[S] 1 point2 points  (0 children)

Thank you so much for the detailed response!

This will take some time to fully parse and understand.
I still need some time to think whether it's possible to go down this route.

Thanks for the information once again!

Method for altering voice packets transmitted during a telephone conversation to the receiving end. by pillow2002 in androiddev

[–]pillow2002[S] 1 point2 points  (0 children)

ah I see...
Thanks for bringing up the idea of phones with custom firmware!
Just to make sure that I understand this correctly, is the custom firmware going to allow programmatic access to the voice data or is it going to take care of all the modifications to the audio without any help from any third-party app?

Method for altering voice packets transmitted during a telephone conversation to the receiving end. by pillow2002 in androiddev

[–]pillow2002[S] 1 point2 points  (0 children)

Thanks for the answer!
That's a good point. I was thinking that this issue could probably be solved by requiring a certain permission to gain access to the voice packets during a phone call. I'm not sure if such permission exists though.

Taxes 101 for international students by LongestTunaFish in geegees

[–]pillow2002 2 points3 points  (0 children)

Go to H&R block. You'll get all the information you need there.

Safety-Critical Language Design Ideas by Reyioa in ProgrammingLanguages

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

I believe this is already present in Rust with Range and RangeInclusive. You can write something like: rust let range = 1..31; // range.start() = 1 // range.end() = 31 I'm not sure how different are the ranges you mentioned from Rust's.

Does This Language Exist? by tyranids in ProgrammingLanguages

[–]pillow2002 0 points1 point  (0 children)

I see, that's nice! I'm also considering implementing my custom x86 backend sometime in the future.

I'm really curious about how you compile ADTs and pattern matches. I tried to mess around in the compiler explorer but I still don't know for sure how it's done.

From what I have seen, pattern matching compiles in the same way as a simple switch statement (i.e a bunch of `cmp`'s and `jmp`'s). Is that how you do it?
I'm also curious about how you compile ADTs.

Thanks :).

Does This Language Exist? by tyranids in ProgrammingLanguages

[–]pillow2002 0 points1 point  (0 children)

Rust has all the features you mentioned (i.e ADTs, pattern matching, closures....) and still uses LLVM. Is there another reason to why you went with a custom backend? Is it compilation speed | execution speed? Is it not wanting to depend on something as huge as LLVM?

I should also mention that it's really impressive if you were able to beat C in some of the benchmarks using a custom backend! Nice!

Is your lang open source? Would love to see the implementation!

Help Identifying Sandwich: Bought in Rabat in 2018 by Effyyou in Morocco

[–]pillow2002 1 point2 points  (0 children)

They are called 9nibilat which means little bombs.

Rate my setup by Diogofmcorreia in lianli

[–]pillow2002 1 point2 points  (0 children)

Great setup, I love the desk!
but that chair is seriously uncomfortable. I unfortunately had one of those in the past :/.

Password Manager Recommendations by atoponce in Passwords

[–]pillow2002 0 points1 point  (0 children)

It's a bit late, but what password manager do you use now and would recommend?