查看原文
其他

他与她,一个两年前的故事

QvQ 夕小瑶的卖萌屋 2021-02-05

有没有那个Ta,值得你一生去守护


1



能力出众,业务能力无人能出其左右;


他资质平庸,扮演一个很不起眼的角色;


她国色天香,是整个公司上上下下关注的焦点;


他其貌不扬,甚至很多人根本不知道他的存在;


她兼爱济天下,事无巨细,她都会一一耐心的处理;


他自扫门前雪,漠然于世,他仅仅完成自己的任务;


但是,他爱她。

虽然,只是默默的爱着…

虽然,她甚至都不知道他的存在。


2


       


济危机,公司效益持续下降。


能力愈大,责任愈大。老板要求她三天之内必须给出解决方案。


好的,我试试…她默默答应。


但是,所有人都知道这根本是件不可能的事情…太难了!


他看着她,还是只是默默的。


第一天,她全身心的投入工作,甚至连一口水也没喝;


第二天,她已连续工作48小时,血丝早已遍布整双眼睛;


第三天,她病倒了,高烧39℃。


全公司,没有一个人敢靠近她。


因为大家都非常清楚,完不成老板的任务意味着什么。


喂!睡什么睡,醒醒,结果出来了吗?”老板的咆哮响彻整个公司。


对不起,还没有,再给我一天时间,我一定可以,抱歉…”她颤颤巍巍的强行支起了自己的身体。


最后一天,我警告你,没有方案,就给我滚蛋!


他,悄然出现,还是默默的走到她的身边。


拿起了她整理的资料,一个转身,全部丢进了垃圾桶。


走,我们回家…


他不顾她惊恐的眼神和全公司的惊愕,抱起了她


你TM疯了吧,你..你给我把她放下。”老板也被这惊人的举动吓了一跳。


他抱着她,默默的向公司楼下走去。


暴躁的老板,哪受过这种侮辱。


一拳朝他打去“你TM把她给我放下,她工作还没完成!


他踉跄的向后退了一下“有我在,不可能。”坚定无比。


老板的愤怒这被彻底点燃,拿起一旁的水果刀。


一刀下去…


血,静静的流淌


如同他静静的爱一样。


他倒下了。


随着他眼睛慢慢闭上

她缓缓走回工位

继续工作....


这是一个绝对真实的故事

因为...

我就是那个惨无人道的“老板”

她,是CPU

他,是守护进程


这是一个守护进程进程为了保护CPU安全而一遍遍终止我算法程序,最后被我残忍kill掉的故事。



3



220万条数据包

2420万条原始数据

K-means群心聚类算法

并发多线程

时间复杂度...


我也不想

但算法使然


CPU兢兢业业

但单核i5性能有限

力不从心


CPU占用率

30%,40%,50%,60%,70%,80%,90%,95%,99%,99.9%,99.99%


内存占用率

30%,40%,50%,60%,70%,80%,90%,95%,99%,99.9%,99.99%


......


Killed


嗯?我的程序被中断了...


再来一次...


嗯?又被中断了?


百度了一下,看看到底是什么阻碍了我的程序


“守护进程(Daemon)—— OOM killer(Out Of Memory killer),默认后台自动开启,当系统CPU利用率过高或内存溢出,它会选择对系统一个/几个适当的进程杀死,以维持Linux系统稳定...”


哦?守护进程?OOM killer?维护OS安全?我就跑个程序,能有多大危险?

好吧,那我把你杀死就行了吧…


kill -9 pid守护进程id

设置K-means.c为最高优先执行权限


看着我的程序又重新跑起来

我鬼魅一笑...


机器飞速的运转着


那滚烫的躯体下仿佛是一颗不甘的心


4


数据结果一条条打印出来


我呆呆的看着屏幕....


Ctrl+C…


“唉,算了”我轻轻的叹了一口气


在最终可以得到正确结果的前提下


我终于还是手动结束了自己程序


看着终端上那个被我亲手杀死的守护进程


我也深深的陷入了沉思

 

毕竟,

它满是自己曾经的样子...

就算帮不上你

我至少也可以守护你


「很庆幸,我终究还是那个我,我终究没有变成自己讨厌的模样」


5


护进程(Daemon)是一类在后台运行的特殊进程,用于执行特定的系统任务。他是一个在后台运行并且不受任何终端控制的进程。Linux系统内存管理中存在着一个称之为OOM killer(Out-Of-Memory killer)的机制,该机制主要用于内存监控,监控进程的内存使用量,当系统的内存耗尽时,其将根据算法选择性地kill了部分进程。内存溢出保护机制催生了诸如OOM killer等多种守护进程,上文中杀死我聚类程序的也正是该守护进程。

来,我还是选择放过了这个守护进程。我将前面的K-means算法修改为简化版的OPTICS算法,虽然OPTICS算法时间复杂度依然很大,但对初始参数非常不敏感的特性,允许我不使用全部数据进行聚类,同时引入KD树和Heap结构,使时间复杂度降低能降低到O(nlogn)级别。这个傻傻的守护进程也就再也没有动过我的聚类程序了。




Last


大家好,我是QvQ,各位可以叫我小Q。上面的文章来源于我两年前刚读研时候的一篇随笔,现在看来,竟然还有有点羞耻是怎么回事??都9102年了,咋还在用K-means !!d(・`ω´・d*)


不过,正如上文所说,我很庆幸,我依然是曾经那个我,依然是那个对算法热情,对技术好奇的我。

接下来的日子里,我会在本小屋中首发关于NLP、搜索、推荐等相关内容的文章,请大家多多资瓷!!!奥利给~!



    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存