1.当我使用多进程并行启动模型的时候( pytorch 或者 tf 或者 keras ),显存或者内存的占用都是翻倍的,这种并行能够理解.
2.当我在主进程启动模型并使用多线程去同时 fit 或者 predict 时,这时会发生什么呢?
( 1 )有一种锁的机制,哪个线程拿到锁就进行推理,之后进行下一个线程的推理,实际上的串行。
( 2 )模型内部类似于函数调用,虽然有 GIL 但是每个线程的推理是实际上的并行,推理速度变慢,但都在慢慢进行。
另外当这个模型是使用 GPU 进行运算的时候,上面的情形下的处理逻辑是一样的吗? 请大佬指点