AntConc让人郁闷的地方

AntConc是个不错的软件,但这软件有时候就让人很郁闷。在检索速度上速度慢,当然对于免费的软件不能有太多要求。以前也知道这软件不能加载超过1M的txt文件。开始以为这无非处理时间长点,反正有耐心等。今天发现却不是处理时间长那么简单,如果处理的单个txt文件超过了1M, 而且是采用加载词表的形式检索,那么这个小小的软件用不了多长时间就会把你电脑的内存给用完,最后的结果可能是死机。以前仅仅认为这个软件最多可能也就消耗几百兆内存,今天用来检索发现占用的内存越来越多,都到了G级别的单位了,而且超过1G内存占用之后还在不停的上涨,我检索的两个文件无非是两个都超过1M的txt文件,加载的词表差不多600词(其实不是词,用来检索的是音标组合)。内存占用到1G之后看着内存越占越多,不得不强制关掉了AntConc。

所以建议使用AntConc的用户,千万别抱着一部到位的想法,也别有贪多的想法,否则你的电脑一会儿就累死了,当然使用服务器配置的用户例外。这个软件对于CPU要求好像不高,但对于内存要求胃口大着呢。消耗的系统资源一点也不亚于大型软件。
 
回复: AntConc让人郁闷的地方

文本处理任务本质如此,拿词频表来说,要在内存里建立哈希表结构,这个表的数据部分包含语料库的不重复词表和每个词项的频率。输出结果之前,这个表一直在内存里,不断增大。若加上词元化处理,则会动用多个内存中的表结构。
 
回复: AntConc让人郁闷的地方

My experience is that searching in "regex" mode is way faster.
 
AntConc可以兼顾“执行速度”与“内存占用”与“语料容量”三者之间的矛盾

通过Windows API,AntConc可以查询当前电脑的“物理内存总量”与“物理内存占用量”,也可以自动估计出“语料容量”在具体任务下的很可能的“物理内存占用峰值”,从而可以自动把默认的“速度优先”改为“容量优先”,把大容量语料的处理从内存运算转移到硬盘的读写,从而大幅度降低内存占用,从而破解了难以处理较大体积的TXT文件的难题。

把内存承载的大容量数据的中间状态转移到硬盘缓存之后,内存占用可以下降到只有几兆,再温馨地提醒用户还剩多少分钟的处理时间就行了。
 
Back
顶部