public class testcache {
class A{
public int []tagid;
public int []tagvalueid;
}
public A [] tmpA;
public void test(){
// tmpA=new A[20000000];
tmpA=new A[20000000];
for (int i = 0; i < tmpA.length; i++) {
tmpA[i]=new A();
tmpA[i].tagid=new int[10];
for (int j = 0; j < tmpA[i].tagid.length; j++) {
tmpA[i].tagid[j]=j;
}
tmpA[i].tagvalueid=new int [10];
for (int j = 0; j < tmpA[i].tagvalueid.length; j++) {
tmpA[i].tagvalueid[j]=j;
}
}
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("freeMemory="+Runtime.getRuntime().freeMemory());
System.out.println("totalMemory="+Runtime.getRuntime().totalMemory());
System.out.println("maxMemory="+Runtime.getRuntime().maxMemory());
System.out.println("--------------------------------");
long start=System.currentTimeMillis();
// int [] tmp=new int[100000000];
// for (int i = 0; i < tmp.length; i++) {
// tmp[i]=i;
// }
// String [] tmp=new String[10000000];
// for (int i = 0; i < tmp.length; i++) {
// tmp[i]=""+i;
// }
BirdBitSet tmpBitSet1=new BirdBitSet();
tmpBitSet1.set(1);
tmpBitSet1.set(1000);
tmpBitSet1.set(99999);
System.out.println("tmpBitSet1.size()="+tmpBitSet1.size());
testcache _testcache=new testcache();
_testcache.test();
System.out.println("time1:"+(System.currentTimeMillis()-start));
BirdBitSet tmpBitSet=new BirdBitSet();
start=System.currentTimeMillis();
int tmpi=0;
for (int i = 0; i < 10000000; i++) {
tmpi=(int) Math.round(Math.random()*20000001);
tmpBitSet.set(tmpi);
}
System.out.println("time2:"+(System.currentTimeMillis()-start));
start=System.currentTimeMillis();
int iranddom=0;
for (int i = tmpBitSet.nextSetBit(0); i >=0; i=tmpBitSet.nextSetBit(i+1)) {
int tmpicount=_testcache.tmpA[i].tagid.length;
for (int j = 0; j < tmpicount; j++) {
int tmp=_testcache.tmpA[i].tagid[j]+100;
}
int tmpicount1=_testcache.tmpA[i].tagvalueid.length;
for (int j = 0; j < tmpicount; j++) {
int tmp=_testcache.tmpA[i].tagvalueid[j]+100;
}
}
System.out.println("iranddom:"+(iranddom));
System.out.println("time3:"+(System.currentTimeMillis()-start));
System.out.println("freeMemory="+Runtime.getRuntime().freeMemory());
System.out.println("totalMemory="+Runtime.getRuntime().totalMemory());
System.out.println("maxMemory="+Runtime.getRuntime().maxMemory());
System.out.println("totalMemory-freeMemory[已经使用的内存]="+(Runtime.getRuntime().totalMemory()-Runtime.getRuntime().freeMemory())/1024/1024);
}
}
结论
单线程 8核机器
2000w
随机取1000w
freeMemory=8588320
totalMemory=9109504
maxMemory=4727504896
--------------------------------
初始数据
time1:88881
模似数据
time2:1172
iranddom:0
//取值
time3:1324
freeMemory=670798848
totalMemory=4201250816
maxMemory=4727504896
totalMemory-freeMemory[已经使用的内存]=3366 (3.3G)
如果用多线程将取到很好的效果,16个核的机器估计可以支撑1亿记录数据量的聚类
分享到:
相关推荐
3. **粒子群优化算法(Particle Swarm Optimization, PSO)**:PSO是一种基于群体智能的全局优化算法,模拟鸟群或鱼群的集体行为,寻找问题的最优解。 4. **I-H/O方法**:这是一种基于极化散射特性的分类方法,通过...
- **更新阶段**:根据新分配的结果,重新计算每个类别的均值(或更复杂的统计特性,如均值、方差等),作为新的聚类中心。 - **合并和分裂**:检查每个类别的数据点数量,如果一个类别的数据点过少,可以将其与...
标题和描述均提到了“鲍威尔和模拟退火优化算法结合的多分辨率三维图像配准”,这是一项在医学图像处理领域的重要技术。该技术的核心在于使用鲍威尔优化算法(Powell's minimization method)和模拟退火算法...
【算法初步与算法案例】是高中数学复习的重要部分,主要涉及如何通过算法解决数学问题以及理解算法的工作原理。算法是一种精确的步骤序列,用于解决特定问题或执行特定任务。在这个主题中,通常会涵盖以下几个方面:...
在MATLAB环境中,优化算法常常被用来处理贝叶斯统计中的计算问题,例如寻找最佳参数估计。贝叶斯统计方法在处理数据预测时,将未知参数视为随机变量,并用先验分布来描述对这些参数的初步理解。如果缺乏先验知识,...
5. **迭代更新**:APES算法通常采用梯度下降或更高级的优化算法,如共轭梯度法,进行迭代更新,直到目标函数达到收敛条件。 在MATLAB中实现APES算法,可以利用其强大的数值计算库和优化工具箱。通常会编写自定义...
在最后的展望部分,作者对数据挖掘和算法实现的未来研究方向进行了讨论,指出了当前研究的不足之处,并提出了改进的可能性,如算法的优化、更大规模数据集的处理能力、以及多学科交叉融合的深入研究等。 综上所述,...
6. 算法优化与代码封装: - 代码中包含了变量私有化,如intaCount、privatelong SimpleFactor、privatelongX等,符合面向对象编程的封装原则。 - 算法中的核心处理函数被封装成方法,如public long CorSeries...
如果新样本映射到的区域与已知故障模式相匹配,就可以初步判断该柴油机存在相应的故障。此外,还可以结合其他诊断方法如专家系统或统计模型进行更准确的故障识别。 总的来说,MATLAB中的SOM神经网络提供了一种有效...
【深度学习物体检测在嵌入式设备上的优化】在计算机视觉领域,物体检测是一个核心问题,从传统的统计学习方法到基于深度学习的解决方案,技术进步显著。2014年,R-CNN引入了卷积神经网络(CNN)用于物体检测,提升了...
该文主要探讨了一种利用基于BP神经网络优化算法来从MIDI文件中提取主旋律的方法。MIDI文件是一种数字化的音乐表示形式,包含了音乐的各种元素,如音高、音强和时值。提取主旋律是音乐信息检索和分析中的关键步骤,有...
3. **算法优化**:通过对算法进行优化,减少不必要的计算步骤,提高算法的执行效率。 #### 四、综合应用 1. **质量指标分析**: - 题目要求从某个企业的生产产品中抽取样本,通过测量产品质量指标值来进行数据...
1. 基于统计模型的算法:这类方法通常利用目标的运动特性,如速度和加速度,通过建立概率模型来区分动态和静态目标。例如,可以通过估计目标的速度和加速度分布,利用高斯混合模型(Gaussian Mixture Model, GMM)...
- **原始OTSU**: 不包含任何优化措施的原始算法。 - **快速OTSU版本一**: 实现了加速版本一的优化策略。 - **快速OTSU版本二**: 只完成了初步变形。 - **快速OTSU_Fast二**: 结合了加速版本一和版本二的思想,进一步...
- **调用优化算法**:通过`GAUCP`函数执行遗传算法优化,输出最佳投影向量和投影指标的变化趋势。 - **结果可视化**:绘制训练样本的投影散布图,并对预测样本进行投影预测,展示了预测样本的投影值。 #### 六、...
在这个高级篇中,我们将深入到MATLAB的统计工具箱,学习如何处理复杂的统计问题,进行高级的数据分析,并应用优化算法来解决实际问题。 在数理统计方面,MATLAB提供了丰富的函数和工具,如描述性统计、假设检验、...
在实际应用中,这两种算法可以结合使用,先用Fisher算法进行初步降维,再通过核函数进一步提升分类效果。这种方法在人脸识别、文本分类、生物信息学等领域有广泛应用。 总结起来,Fisher算法和基于核的Fisher算法是...
通过实例讲解,帮助学生建立对算法初步的理解,并为后续更深入的学习打下基础。 #### 第三章:函数的增长 在这一部分,重点介绍大O表示法、Ω表示法和Θ表示法,以及它们在分析算法复杂度时的应用。通过对比不同...
根据统计的相似点数量nlike(i, j),可以对角点的可能性进行初步判断: 1) nlike(i, j) = 8,表示邻域内所有点都与中心点相似,这样的点通常不会是角点,因为它们的梯度变化不大。 2) nlike(i, j) = 0,表示邻域内...