草庐IT

PERFORMANCE

全部标签

java - 查找数字 (4+sqrt(11))^n 的小数点前的最后两位数字

我正在做一道题,我必须找到数字[4+sqrt(11)]n.例如,当n=4,[4+sqrt(11)]4=2865.78190...时,答案是65。其中n可以从2变化9。我的解决方案-我尝试构建一个平方根函数来计算11的平方根精度等于用户输入的n值。我用过BigDecimal在Java中避免溢出问题。publicclassMathGenius{publicstaticvoidmain(String[]args){Scannerreader=newScanner(System.in);longa=0;try{a=reader.nextInt();}catch(Exceptione){Syst

java - 是否存在 Java 7's Hashmap implementation is preferred to Java8' s 实现的场景

从Java8开始,我们钟爱的HashMap的行为有点不同。如果key实现了一个可比较的接口(interface),每个散列将包含一个平衡树而不是链表。这将冲突情况下的最坏时间复杂度从O(n)降低到O(log(n)),参见JEP180是否存在从Java7升级到Java8会导致HashMap性能下降的情况? 最佳答案 Java8将在>N的桶中的条目数中使用平衡树,其中选择Nempirically,如果该数字我也不确定创建和查询树的开销是否值得小N的利润。 关于java-是否存在Java7's

java - 如何在计算大量矩阵时使用内存

我得到了一个程序,它要求我计算一个矩阵的先前状态的数量。给定的矩阵是一个boolean矩阵。我将使用1代表true和0代表false来解释这个程序。矩阵中一个单元格的下一个状态是1,如果考虑到这四个单元格:细胞本身右边的单元格它下面的单元格它下方和右侧的单元格,这4个单元格中只有一个1,即这4个单元格中正好有3个0和正好有1个1细胞。如果给定的矩阵(M)是:110000010010然后对于第一个单元格(M[0][0]),要考虑的四个单元格是M[0][0]、M[0][1]、M[1][0]和M[1][1]。所以,第一个单元格的下一个状态是0,因为我们在这4个单元格中有2个1。对于第二个单元

java - visualvm 对比 JProbe 对比 JProfiler

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭11年前。有多种工具可用于CPU和内存分析,其中jvisualvm是相当新的。这些工具之间是否有任何比较/基准?哪个工具比其他工具更好?

java - Java 如何让低效代码运行得比高效代码更快?

在下面的代码片段中,Foo1是一个每次调用方法bar()时都会递增计数器的类。Foo2做同样的事情,但多了一个间接级别。我希望Foo1比Foo2快,但在实践中,Foo2始终比Foo1。JVM如何优化代码,使Foo2比Foo1运行得更快?一些细节测试是使用java-serverCompositionTest执行的。使用java-clientCompositionTest运行测试产生了预期的结果,即Foo2比Foo1慢。切换循环的顺序没有什么不同。在sun和openjdk的JVM上使用java6验证了结果。代码publicclassCompositionTest{privatestatic

java - C 性能和编译选项

我有两个类似的实现(java和c++),用于像选择排序这样的普通算法。publicinterfaceSortingAlgorithm{publicvoidsort(int[]a);}publicclassSelectionSortimplementsSortingAlgorithm{@Overridepublicvoidsort(int[]a){for(inti=0;i和c一个:inlinevoidswap(int*a,inti,intj);voids_sort(int*a,intsize){inti;for(i=0;i现在,我尝试在一个大数组(100000个随机整数)上测试它们。起初

java - 如何在应用程序中持续保持 5GB 内存,而不会因 GC 而导致性能不佳?

我的应用程序是地理应用程序。由于要求响应时间短,我的每个实例都将所有点加载到内存并将它们存储在结构(四叉树)中。我们每分钟加载所有点(与数据库同步)并将它们放入几个四叉树中。我们现在有0.5GB积分。我正在努力准备下一个级别的5GB积分。虚拟机:-XX:NewSize=6g-Xms20g-Xmx20g-XX:+UseConcMarkSweepGC-verboseGC-XX:+PrintGCTimeStamps-XX:+PrintGCDateStamps-XX:+PrintGCDetails由于GC,实例的启动花费了很多时间,另外应用程序一直受到GC的影响。我想引用大堆的GC。我能想到几

java - 欧拉计划 35 : HashSet gives incorrect results

我为ProjectEuler#35:CircularPrimes写了一个Java程序:Thenumber,197,iscalledacircularprimebecauseallrotationsofthedigits:197,971,and719,arethemselvesprime.Therearethirteensuchprimesbelow100:2,3,5,7,11,13,17,31,37,71,73,79,and97.Howmanycircularprimesaretherebelowonemillion?我的代码可以正常编译和运行,但是,根据我使用的数据结构,它会给出不同

java - JBoss Cache 和 Ehcache 的性能

我正在考虑使用JBossCache或Ehcache来实现缓存。在查看了这两个API之后,我的直觉是JBoss可能比Ehcache的内存效率更高一些,因为它可以将raw对象放入缓存中,而Ehcache需要将数据包装在Element中。对象。我设置了一个快速工作台,在缓存中重复插入键值元组。键和值类非常简单:键:publicclassKeyimplementsSerializable{privatestaticfinallongserialVersionUID=-2124973847139523943L;privatefinalintkey;publicKey(intpValue){thi

java - lucene 中的高亮性能非常慢

Lucene(4.6)荧光笔在搜索频繁词时性能非常慢。搜索速度很快(100毫秒),但突出显示可能需要一个多小时(!)。详细信息:使用了很棒的文本语料库(1.5GB纯文本)。性能不取决于文本是否被分割成更多的小块。(也测试了500MB和5MB的片段。)存储位置和偏移量。如果搜索非常频繁的术语或模式,TopDocs检索速度很快(100毫秒),但每次“searcher.doc(id)”调用都非常昂贵(5-50秒),而getBestFragments()非常昂贵(超过1小时).为了这个目的,甚至他们被存储和索引。(硬件:酷睿i7,8GM内存)更大的背景:它将用于语言分析研究。使用了一种特殊的词