• 1 Post
  • 55 Comments
Joined 2 years ago
cake
Cake day: June 3rd, 2023

help-circle



  • I’ve used them both a good bit for D&D/TTRPG campaigns. The image generation has been great for making NPC portraits and custom magic item images. LLM’s have been pretty handy for practicing my DM-ing and improv, by asking it to act like a player and reacting to what it decides to do. And sometimes in the reverse by asking it to pitch interesting ideas for characters/dungeons/quest lines. I rarely took those in their entirety, but would often have bits and pieces I’d use.





  • I haven’t heard of that being what threading is, but that threading is about shared resourcing and memory space and not any special relationship with the scheduler.

    Per the wiki:

    On a multiprocessor or multi-core system, multiple threads can execute in parallel, with every processor or core executing a separate thread simultaneously; on a processor or core with hardware threads, separate software threads can also be executed concurrently by separate hardware threads.

    https://en.m.wikipedia.org/wiki/Thread_(computing)

    I also think you might be misunderstanding the relationship between concurrency and parallelism; they are not mutually exclusive. Something can be concurrent through parallelism, as the wiki page has (emphasis mine):

    Concurrency refers to the ability of a system to execute multiple tasks through simultaneous execution or time-sharing (context switching), sharing resources and managing interactions.

    https://en.m.wikipedia.org/wiki/Concurrency_(computer_science)



  • If what you said were true, wouldn’t it make a lot more sense for OP to be making a joke about how even if the source includes multi threading, all his extra cores are wasted? And make your original comment suggesting a coding issue instead of a language issue pretty misleading?

    But what you said is not correct. I just did a dumb little test

    import threading 
    import time
    
    def task(name):
      time.sleep(600)
    
    t1 = threading.Thread(target=task, args=("1",))
    t2 = threading.Thread(target=task, args=("2",))
    t3 = threading.Thread(target=task, args=("3",))
    
    t1.start()
    t2.start()
    t3.start()
    

    And then ps -efT | grep python and sure enough that python process has 4 threads. If you want to be even more certain of it you can strace -e clone,clone3 python ./threadtest.py and see that it is making clone3 syscalls.






  • It likely depends on the courthouse, but generally speaking you’ll show up, sign in, someone will give a little talk about how things work, and then you’ll wait in a waiting room for a few hours while various names are called. Then you’ll go into the court room and the actual jurors will get selected from the pool. They’ll ask some questions and depending on the answer some people will get removed (having a family member who’s a police officer is pretty common).

    If you’re not selected, you’ll probably go back to the waiting room to see if you get pulled for another case. If you are, you’ll sit and listen to the details of the case and eventually make a determination. Depending on the case/jurisdiction, you might also be a “backup juror” where you’ll sit through the entirety of the case, but won’t actually be part of the deliberation at the end unless another juror had to drop out for some reason.

    I ended up getting a murder trial, which was pretty interesting. Overall wasn’t a horrible experience, but definitely glad I brought a Steam Deck while I was waiting.