首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 328 毫秒
1.
基于Java平台先对经典快速排序的改进方法作了介绍,通过测试得出了一个合适的经验阈值,改善了快速排序在小数据量情况下的低效问题。然后对快速排序作了多线程优化,并进行了单、多线程的对比测试,结果显示在多核主机上能有几倍的速度提升。最后对多线程快速排序算法进行了理论分析,得出了该算法速度的理论上限。  相似文献   

2.
为实现多线程快速排序,提出基于Fork/Join框架的多线程快速排序,同时对排序算法进行优化。该算法主要用于大量数据需要进行排序处理的应用。  相似文献   

3.
庹清  宋耀虎 《计算机应用》2012,32(9):2455-2457
针对大数据量排序算法优化问题,提出一种基于Java的按位拆分的排序新算法。该排序算法按照位拆分数据,并结合Java的多线程对拆分的数据进行并行处理。数据实验结果表明,对于大数据量排序,该算法性能明显优于快速排序算法,而且算法具有很好的并行效率。  相似文献   

4.
杨良怀  项俊腱  徐卫  范玉雷 《计算机科学》2018,45(3):171-177, 212
面向具有时间维度的大数据流,基于二级B+树索引结构,提出了一种高效的面向时间窗口、采用批量装载技术的内存B+树构建方法。该方法对时间窗口进行分片,通过分离出可以并行处理的操作来加速构建过程,将排序操作与数据流接收并行,B+树骨架的构建与排序并行;采用基于排序的批量装载技术以及优化 的构建顺序,能够避免多线程之间不必要的加锁、同步开销,有效提高构建效率。提出的多次微批量排序单次批量装载(MBSortSBLoad)B+树构建方法的构建速度快,能承载的最大流速大。实验验证了所提方法的有效性。  相似文献   

5.
提出一种基于多线程技术的嵌入式三维数字成像DSP系统设计。该系统应用时间序列变频条纹数字投影原理,使用DSP/BIOS实时操作系统的配置工具实现多线程DSP应用软件,从而实现编码条纹投影、调制图像采集和相位解调的流水线处理过程,并且使用软件流水等方法对相位重建计算进行优化。实验表明,该DSP系统能实现快速的三维表面测量任务。  相似文献   

6.
针对三维Shepp-Logan头模型投影仿真,提出了一种快速并行投影计算方法。首先依次计算三维射线与各椭球的交点,然后对交点序列进行排序,用排序后的交点序列来确定射线穿过模型的区域编号及长度,最后将每个区域内的投影累加得到射线的投影值。在此基础上,将计算任务分解为4个独立的子任务,通过多线程技术在多核平台上实现了锥束CT仿真投影的快速并行计算。实验结果表明,该方法非常有效,在四核平台上取得了约3.5倍的加速比;图像重建结果验证了该方法生成的投影数据是准确的。  相似文献   

7.
随着多核技术的不断发展,多核CPU已经成为处理器市场的主流。如何充分利用多核的优势提高应用程序的性能是开发人员不得不面对的课题。多核系统为开发人员提供了一个实现并行计算的重要平台。文中探讨了基于双核系统的快速排序的效率,介绍了C#线程编程的相关知识,并在此基础上实现了基于双核系统的多线程的快速排序算法,实验结果表明该算法较传统快速排序算法而言,算法执行效率得到了很大的提升。  相似文献   

8.
随着多核技术的不断发展,多核CPU已经成为处理器市场的主流。如何充分利用多核的优势提高应用程序的性能是开发人员不得不面对的课题。多核系统为开发人员提供了一个实现并行计算的重要平台。文中探讨了基于双核系统的快速排序的效率,介绍了C#线程编程的相关知识,并在此基础上实现了基于双核系统的多线程的快速排序算法,实验结果表明该算法较传统快速排序算法而言,算法执行效率得到了很大的提升。  相似文献   

9.
针对目前主流的多核处理器,提出了共享cache敏感的数据库排序多线程执行框架(sharedcache sensitive multithreaded sorting framework,SCS-MSF).首先分析了多线程QuickSort排序在共享cache多核处理器中执行时面临的性能瓶颈,在此基础上针对SCS-MSF每个处理阶段的数据访问特点,提出了各自的多线程并行执行模式,并通过各种优化策略改善线程执行时的cache性能,特别是减少多线程访问共享cache时的访问冲突问题,以提高线程的cache性能.在实验中,基于内存数据库EaseDB实现了SCS-MSF.实验结果表明SCS-MSF具有良好cache访问性能,从而提高了多线程执行的效率,而且性能稳定,数据库排序性能得到了较大提高.  相似文献   

10.
针对故障树分析的关键技术—排序和置换,提出一种基于BDD的快速有效的(LNPC)方法。该方法采用制定的排序和置换策略直接完成子事件的排序与门事件的置换,一次性完成故障树到BDD的转化和优化,增加了获取最小规模BDD的排序机会,同时降低了BDD的存储空间且不需要先写出故障树的布尔函数。算法分析与实验结果表明该方法对不同的故障树转化是有效的。  相似文献   

11.
Sorting on STAR     
This paper gives timing comparisons for three sorting algorithms written for the CDC STAR computer. One algorithm is Hoare's Quicksort, which is the fastest or nearly the fastest sorting algorithm for most computers. A second algorithm is a vector version of Quicksort that takes advantage of the STAR's vector operations. The third algorithm is an adaptation of Batcher's sorting algorithm, which makes especially good use of vector operations but has a complexity of N (log N)2 as compared to a complexity of N log N for the Quicksort algorithms. In spite of its worse complexity, Batcher's sorting algorithm is competitive with the serial version of Quicksort for vectors up to the largest that can be treated by STAR. Vector Quicksort outperforms the other two algorithms and is generally preferred. These results indicate that unusual instruction sets can introduce biases in program execution time that counter results predicted by worst-case asymptotic complexity analysis.  相似文献   

12.
Sorting huge amounts of datasets have become essential in many computer applications, such as search engines, database and web-based applications, in order to improve searching performance. Moreover, due to the witnessed prevalence of the commercial Simultaneous Multithreaded architecture (SMT), parallel programming using multithreading becomes a dire need for efficiently using all available hardware resources for one application. In this paper, one of the efficient and quick algorithms, the Quicksort, is applied as a parallel multithreaded algorithm on SMT architecture, where virtual parallelization has been achieved using the POSIX threads (Pthreads) library. The proposed algorithm is evaluated and compared with its sequential counterpart. The obtained analytical and experimental results reveal that multithreading is a viable technique for implementing the parallel Quicksort algorithm efficiently on SMT architecture, where it has been shown both analytically and experimentally that the parallel multithreaded Quicksort algorithm outperforms the sequential Quicksort algorithm in terms of various performance metrics including; time complexity and speedup.  相似文献   

13.
Dalia Motzkin 《Software》1981,11(6):607-611
A sorting algorithm, called Stable Quicksort, is presented. the algorithm is comparable in speed with the Quicksort algorithm, but is stable. The experimental evidence presented support the theoretical evaluation of the performance of Stable Quicksort.  相似文献   

14.
Sorting and related operations, such as finding percentiles, are traditional computer applications. For in-core sortng. Quicksort is usually the method of choice as it is efficient, compactly coded, and easily understood. This communication shows how one can fully vectorize Quicksort and thereby preserve its efficiency on vector computers such as Cray and Convex machines.  相似文献   

15.
一种非比较分段排序算法的研究   总被引:4,自引:2,他引:4  
非比较分段排序(简称NCSS)算法是建立在模仿人类思想方式基础上的一种非比较排序算法,算法分析和实验结果都表明:NCSS算法的时间复杂度和待排序数据分布无关,为O(N),而附加存储空间极小,排序速率明显优于QuickSort,ProportionSplitSort,分段快速排序等算法,NCSS算法特别适合于数据最大的场合。  相似文献   

16.
由于多线程具有并发执行、资源共享、切换时CPU资源利用率低等优点.而被广泛使用。然而,其并发执行的特点也是容易引起安全问题的根源。因为并发执行容易导致“竞争”现象。从安全问题作为切入点.介绍一种利用单线程模拟多线程的方法.具体分析其原理、算法和使用,避免多线程引发的问题。  相似文献   

17.
R. Geoff Dromey 《Software》1984,14(6):509-518
The widely known Quicksort algorithm does not attempt to actively take advantage of partial order in sorting data. A simple change can be made to the Quicksort strategy to give a bestcase performance of n, for ordered data, with a smooth transition to O(n log n) for random data. This algorithm (Transort) matches the performance of Sedgewick's claimed best implementation of Quicksort for random data.  相似文献   

18.
多线程爬行是高效率网络机器人实现的关键。分析在单个计算机节点上网络机器人多线程爬行的关键流程,并借鉴硬件指令流水线的执行过程研究不同多线程并发调度策略下系统的性能特点。最后,给出实现网络机器人多线程爬行的关键数据结构、并发调度方法及URL消重策略。实验数据表明:有效地控制并发和有选择地消除重复URL可以提高网络机器人的爬行速度。  相似文献   

19.
Improving multikey Quicksort for sorting strings with many equal elements   总被引:1,自引:0,他引:1  
Bentley and Sedgewick proposed multikey Quicksort with ‘split-end’ partitioning for sorting strings. But it can be slow in case of many equal elements because it adopted ‘split-end’ partitioning that moves equal elements to the ends and swaps back to the middle. We present ‘collect-center’ partitioning to improve multikey Quicksort in that case. It moves equal elements to the middle directly like the ‘Dutch National Flag Problem’ partitioning approach and it uses two inner loops like Bentley and McIlroy's. In case of many equal elements such as DNA sequences, HTML files, and English texts, multikey Quicksort with ‘collect-center’ partitioning is faster than multikey Quicksort with ‘split-end’ partitioning.  相似文献   

20.
针对在数据量动态增加的场景下现有的排序算法管理数据导致算法性能大大降低的问题,提出一种16-bit Trie树排序算法。借助邻居节点上存储的链节点指针完成排序,它不仅可以边构建边排序,且引入动态数组可以提高该算法的空间效率。仿真结果表明,传统Trie树支持数据动态更新,但通过遍历Trie树的方式完成排序耗时较多,快速排序算法在数据动态增加时效率低,16-bit Trie树排序算法支持数据动态更新,排序时间明显少于传统Trie树,优于快速排序,这表明16-bit Trie树排序算法在处理海量动态数据时具有突出优势。  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号