Jump to content

fordy_rounds

Member
  • Posts

    212
  • Joined

  • Last visited

Everything posted by fordy_rounds

  1. Great job everyone! My office is weirdly quiet now without my GPU fans spinning at nearly full blast.... At least I have my CPU fans to keep me company still (for the next 1.59 days, anyway--must have picked up a big WU).
  2. With helicopters, counter-rotation also serves to cancel out the torque on the helicopter (that normally must be cancelled out by tail rotor, increasing drag with no benefit to lift) and eliminates the need for a tail rotor, improving efficiency (though some will still have a small tail rotor for steering).
  3. Yeah, looks like you're right about the board's model number. There's not a lot of info online about it apparently, but what I have found seems to indicate that there's no built-in graphics. He'll need a discrete GPU (even an old one will do) to use as a "display adapter." Luckily it's not too old, and has PCIE, so a modern GPU should work, though be careful about power - I don't think I'd trust that PSU with very much.
  4. This is literally what PCIE is for. For example, my desktop MB didn't come with WiFi, but I needed wireless networking. I had issues (due to placement/interference) with USB dongles. So I installed a PCIE WiFi card. Bam, rear I/O updated with external antennas using a modular card. Another computer, I needed more SATA ports. Added a Host Bus Module (PCIE storage adapter, basically), and got four extra internal SATA ports. This is better than being able to only update the external I/O as you suggest, since I can add either internal or external (or both - I've seen USB cards, for example, with both internal and external ports) I/O. And yes, you can use the same modules for years. The HBM mentioned above went into a PC from 10 years ago. the WiFi went into a brand new build last year. They're interchangeable - I could swap them with each other, if I wanted to.
  5. Yeah, same here. Finished a mega-WU early this morning, now I've got this: (Already marked as "finishing" since I know it's not gonna get done before the deadline.) I might ramp it up to 12/12 threads after deadline tonight, after my GPU finishes. (I keep 2 threads free to feed the GPU, of course.)
  6. I've thought about that, but with my setup I haven't seen any benefit beyond turning off two threads. (I have a R5 3600 with a GTX 1650S. I fold with the GPU and 10 of 12 CPU threads, and that seems to be my best balance normally.) On the other hand, I realized this event goes through Sunday night, not just tomorrow, so I'll just barely squeeze in this mega-WU sometime early Sunday morning (GMT). Here's hoping for some small WUs on Sunday.
  7. My CPU picked up a monster WU a day or so ago. It has 1.59 days remaining. I don't think it's gonna get in on time... Feels like the last couple days were wasted. Oh well, that's how it goes sometimes. (And this is on my R5 3600 too, not my crappy 10-year-old CPU. Curse you, project 18425!)
  8. Time for my 2 cents, too. I notice you have a Cause Preference set. I'm wondering if maybe that's causing it to wait for long periods at a time between WUs, waiting for a COVID WU to become available? Have you tried changing that to Any to see if it makes a difference?
  9. Wow. That's basically my total PPD between both CPU and GPU (on Windows). But with just your CPU. Impressive.
  10. I mean, you saw my screenshot, right? I have my "server" folding at just over 1300 PPD. In case you didn't see it, here's a clip: Now sure, I also have my desktop (both CPU and GPU) folding at a total of 6-700K.... but that's not the point.
  11. Woohoo, 79th on Day one! Last year I hovered around the 90s, so I'm happy so far. I also added some new hardware. I don't think it's going to make much difference though.... It's my storage server's CPU, a 10-year-old Athlon (and a GPU that I added in for Plex transcoding, though I haven't actually used it, and it's too old to be supported by F@H) running Linux. (It's a terrible CPU, but it's also a very lightly used server, so it does what I need it to, and it was free.)
  12. Thanks! AOMEI worked, and I can browse through the files now.
  13. So, I've been pulling data from old hard drives onto my new NAS, and I've come across an interesting file. Apparently, in 2013-2014, I used some sort of backup software to backup an old computer. Which is great, except that it saved the backups into a proprietary filetype. The files are called My Backup(1).adi (and it appears to be an incremental backup, since there's also a My Backup(1)1.adi, My Backup(1)2.adi, etc., that are much smaller). I've searched the filetype, and it comes up most often as belonging to Active@ Virtual Disk, which does indeed have a backup utility; unfortunately, I installed Active@, and it fails with "Error = 32." Unfortunately, I haven't been able to determine what error 32 means. I've also opened the files in a hex editor, and they have what appears to be a file signature of "BIFH" (that, is the first 4 bytes are 0x42, 0x49, 0x46, and 0x48). Unfortunately, a search for that file signature also came up fruitless. I'm at my wits end. I have no idea what's in this backup (or whether I already have the contents somewhere else), but I'd really like to crack into the contents if I can. Any suggestions for what software might be able to crack this nut?
  14. There are solutions that provide KVM over LAN, but they are expensive. Steam link, as @jaslion recommends, would work if you're playing Steam games. (Note that you can add just about any game to Steam, though I don't know how well they'd be supported by Steam Link.) For a little money but more work, you could probably run a high-quality active (active cables have repeaters built-in that boost the signal to overcome cable length limitations) USB-3.2 cable alongside the existing ethernet, then put a hub behind the TV to provide KVM over USB. (Not sure how much configuration that would take to have your GPU output over USB instead of its own ports, though. If you have problems, you could run an HDMI cable with it, too.)
  15. It's an extra 4-pin 12-volt pin. Whether you need it or not is entirely dependent on your hardware and uses. Overclocking a Ryzen 5? Don't bother. Overclocking a Ryzen 9? Maybe. But only if your PSU can actually supply the power. Many PSUs only have an 8-pin connector. But if your PSU has both an 8 and 4 (12V, not to be confused with 6 or 8 or 6+2 pin PCIE power), then there's no harm in using it. If your PSU only has an 8-pin CPU/EPS power connector, though, then that's all you should use. Don't try to find an adapter or something to fill the extra 4-pin just for the sake of filling it.
  16. Yep. Go into bios, find the setting for either XMP or DOCP (two names for basically the same thing). Should be an XMP profile for 3200 listed.
  17. No claim that it's the best, but FWIW I have the Archer T6E and have been happy with it. My ISP says they provide me with 200Mbps down, and I've tested it (with the T6E) at about 220. (The ISP is the speed limiter here; I could probably get higher than that for intranet, though I haven't tested it.) Note that your AP/Router will have to handle that sort of speed, too. Signals always get slowed down by whatever is the weakest link in the chain.
  18. It might, but consider corner cases. If 's' has, say, 20 characters, then you're allocating 20 chars when you only need at most 6. (That's ok; better too many than too few.) However, what happens if 's' is only 1-3 characters? You always need out to have at least 4 chars (because the string "1/3" needs 4 chars), but you would only allocate 1-3. You can, however, use some math to figure it out. Count the number of digits in totalChars (a little Googling will find you some algorithms, but it's basically counting iterations while dividing by 10), then you need 2*numDigits+2 chars allocated.
  19. C doesn't handle strings well, as you're finding out. Both of these functions have errors, just the first is run-time and the second is compile-time. In the first version, you have char * out = malloc(0); which might work with your compiler, but won't necessarily work with any C compiler. (Some compilers return a NULL pointer for malloc(0), which means that you'll get a segmentation fault when you use this in the sprintf call.) The problem is that you're not actually allocating any space here; technically, even though your compiler returns an apparently valid pointer, any use of it (such as in sprintf) is a buffer overflow error. (If you're malloc-ing anything else, you might overwrite it and cause errors.) To fix this, figure out how many chars you'll actually need (some math from the string length will get you there) and malloc that number. (i.e., if strlen returns a two-digit number, you need 6 chars [2 for the first number, 1 for the /, 2 for the second number, and 1 for the null char at the end]; if it's three-digits you need 8, etc.) The other issue here is that by malloc-ing a char* and returning it from the function, you're putting the burden of free-ing it onto the calling code, and if that doesn't happen, you could get a memory leak. Version 2, without the malloc, doesn't work because the pointer is pointing to a read-only string literal. Thus, when you try to change it (with sprintf), there is an error. A fix here is to use the fact that arrays and pointers are closely related, and use char out[16]; This will most probably allocate more characters than you actually need, but that's ok, it's better to have too many than too few. (From my math above, this allows up to a 7-digit number of chars in the original string, or up to 9,999,999 characters. You could adjust the 16 to allow whatever number size you think you'll need; however, it has to be set at compile-time, and cannot by dynamic. If you want it dynamic, you have to malloc it.) This allocates the space onto the stack instead of the heap, which means that it'll automatically be freed without a memory leak. On a side note, once you know how long "out" can be (whether malloc-ed or statically assigned), you should use snprintf instead of sprintf to ensure there's no buffer overflow. (Example: if I use malloc(4), then try to print "1/10", that's 5 characters, and I've overflowed the allocated space. sprintf will let you do this; snprintf takes the 4 as an argument and will only allow up to 4 chars.) In summary, here's your answers: 1) Why does the pointer "out" need to be malloced? It doesn't have to be, but that's the only way to get a dynamic array length. If you're ok with a static length, you can use e.g. char out[10]; instead. 2) Is there a way to write this program without using malloc( ) ? Yes, but only with a static array length, as above. 3) If malloc is used inside the function, how can I free the pointer "out"? - I read you should always free any memory allocated with malloc( ) Yes, that's correct. Since you're returning the pointer, the calling function assumes the responsibility for freeing it. This is messy, and is often the cause of memory leaks. In this case, it might look something like: char* output = printerError(myString); // do something else with 'output' free(output);
  20. Please, don't let one hater get you down. I loved the Dreamcast build, and I'm intently watching this one too, dreaming that someday I might do something so ambitious....
  21. This will likely be my final post here (except maybe responding to responses). The gradual upgrade is finally finished! I got a new "monitor" on a Black Friday sale (sorry, I don't have pics, but... it looks like a screen.) It's actually a TV, but I verified that it was well-reviewed for PC use before purchasing. It's a 43" 4K TV, and I love it. It's awesome for productivity; I can split windows out into corners and it's effectively 4 1080p screens, but bezel-less. Since I also have my work laptop connected to it, it's very useful. It's also great for gaming, even though I can't do super high settings due to my 1650S. I love it for flight sims; despite not being able to load the best texture packs (due to VRAM limits), it's so much more immersive than any other screen I've used, just because of the sheer size. (Someday I'd love to upgrade the GPU, but that's not in the cards right now.) Then I ordered a second stick of RAM. Despite clicking on "buy again" on Newegg, I somehow ordered the wrong thing.... Can you spot the difference? It's very subtle, and I didn't even notice it at first. Yep, that's right, the XMP profile is different. So, back to Newegg it went. Once I got the correct RAM ordered (3200, not 3000), I discovered that my motherboard's manual is weird. It shows: So, I followed it to the letter, and put my RAM in what I thought were slots 1 and 2. I noticed that it seemed unusual, considering that it's almost always 1 and 3 (from what I've read online). I turned it on, looked in CPU-Z, and..... it showed RAM in slots 1 and 2, but still Single Channel mode. So I shut it down, swapped to the more normal 1 and 3, and now CPU-Z shows 1 and 3 and Dual Channel mode. Upon further investigation, I noticed that table actual has the slots listed as 4,2,3,1; and indeed, the silkscreen on the board itself shows 4,2,3,1 also. So by that metric, I'm in slots 4 and 3. So maybe I should move them over one to be in 2 and 1? But I probably won't, it's too much work. Finally, I did a little more cable management to try to clean things up some, especially in front of the lower radiator fan. It's still not perfect, but it's a lot better than it was. Here's the final product, though I need to take more glowy pics too: Overall I'm pretty happy with it, and it's been a fun journey. There's room for upgrades still; in particular, I'd love to move into an M.2 NMVe SSd, and the aforementioned better GPU; but I'm very happy with what I built, and I'm calling it DONE (for now).
  22. No, as long as your GPU is in the correct (usually top-most) PCIE slot. That slot (and usually one M.2 slot) has lanes that connect directly to the CPU. The other slots' lanes connect to the chipset, which then multiplexes them onto 4 lanes (AMD, though I think Intel is similar) connecting to the CPU. So if you put everything into slots that connect via the chipset, then yes, it could bottleneck; but if the GPU and storage are in directly-connected slots, then it won't. To illustrate what I mean, here's the B550 diagram; other systems are generally similar.
  23. Ah, that makes sense. So you're saying mine should be fine; I've got a 3600 (65W TDP) with a probably-overkill AIO on it. (If I were just gaming I probably would have stuck with the stock cooler, but I could only fold 5 of 12 threads without it overheating....)
  24. [fordy_rounds glances nervously at the DS3H in their case] But really, sorry for your loss @Gorgon and everyone else who sacrificed to appease the hardware gods. Great month, I look forward to doing this again next year. And as for the new levels, I'm glad I got my 25M Silver during this event.... though the slog from here to the new Gold is going to be very long.
×