天文数据总是庞大的,这需要我们根据自己电脑的配置去最大化的使用cpu的内存和cpu的多线程。
https://blog.youkuaiyun.com/huangyanlong/article/details/43935535?spm=1001.2014.3001.5506
这个链接提供cpu内存和线程的基本查看命令。线程确定了我们只能同时执行最大线程的任务数,超过线程的任务会排队等待。cpu内存提供了一个高速缓存空间,例如我们要重复的读写某个大小约2g的fits文件,第一次读可能需要更长时间,往后,只要缓存在cpu的高速缓存空间内的话就实现非常高效的读写速度。具体cpu缓存查看可以参考以下文章,缓存也不一定需要定时释放,linux系统会自动根据最近执行任务需要的数据,去释放一部分高速缓存来存放新的数据。
https://blog.youkuaiyun.com/weixin_34318326/article/details/85933989?spm=1001.2014.3001.5506
pool进程池子
pool在Python提供一个简单的多进程的手段,只需要一个py脚本即可实现多进程。
原理就是会自动帮你执行每个任务,在你设定的池子的数量之后,超出数量的任务会暂时挂起不再运行。具体用法网上有很多,也可以参考一下文章,一般用pool.map即可
https://blog.youkuaiyun.com/wei18791957243/article/details/108733719?spm=1001.2014.3001.5506