/Tools/pybench/Numbers.py

http://unladen-swallow.googlecode.com/ · Python · 784 lines · 637 code · 147 blank · 0 comment · 8 complexity · eb7d55072113d4ab9c3723615fd6c195 MD5 · raw file

  1. from pybench import Test
  2. class CompareIntegers(Test):
  3. version = 2.0
  4. operations = 30 * 5
  5. rounds = 120000
  6. def test(self):
  7. for i in xrange(self.rounds):
  8. 2 < 3
  9. 2 > 3
  10. 2 == 3
  11. 2 > 3
  12. 2 < 3
  13. 2 < 3
  14. 2 > 3
  15. 2 == 3
  16. 2 > 3
  17. 2 < 3
  18. 2 < 3
  19. 2 > 3
  20. 2 == 3
  21. 2 > 3
  22. 2 < 3
  23. 2 < 3
  24. 2 > 3
  25. 2 == 3
  26. 2 > 3
  27. 2 < 3
  28. 2 < 3
  29. 2 > 3
  30. 2 == 3
  31. 2 > 3
  32. 2 < 3
  33. 2 < 3
  34. 2 > 3
  35. 2 == 3
  36. 2 > 3
  37. 2 < 3
  38. 2 < 3
  39. 2 > 3
  40. 2 == 3
  41. 2 > 3
  42. 2 < 3
  43. 2 < 3
  44. 2 > 3
  45. 2 == 3
  46. 2 > 3
  47. 2 < 3
  48. 2 < 3
  49. 2 > 3
  50. 2 == 3
  51. 2 > 3
  52. 2 < 3
  53. 2 < 3
  54. 2 > 3
  55. 2 == 3
  56. 2 > 3
  57. 2 < 3
  58. 2 < 3
  59. 2 > 3
  60. 2 == 3
  61. 2 > 3
  62. 2 < 3
  63. 2 < 3
  64. 2 > 3
  65. 2 == 3
  66. 2 > 3
  67. 2 < 3
  68. 2 < 3
  69. 2 > 3
  70. 2 == 3
  71. 2 > 3
  72. 2 < 3
  73. 2 < 3
  74. 2 > 3
  75. 2 == 3
  76. 2 > 3
  77. 2 < 3
  78. 2 < 3
  79. 2 > 3
  80. 2 == 3
  81. 2 > 3
  82. 2 < 3
  83. 2 < 3
  84. 2 > 3
  85. 2 == 3
  86. 2 > 3
  87. 2 < 3
  88. 2 < 3
  89. 2 > 3
  90. 2 == 3
  91. 2 > 3
  92. 2 < 3
  93. 2 < 3
  94. 2 > 3
  95. 2 == 3
  96. 2 > 3
  97. 2 < 3
  98. 2 < 3
  99. 2 > 3
  100. 2 == 3
  101. 2 > 3
  102. 2 < 3
  103. 2 < 3
  104. 2 > 3
  105. 2 == 3
  106. 2 > 3
  107. 2 < 3
  108. 2 < 3
  109. 2 > 3
  110. 2 == 3
  111. 2 > 3
  112. 2 < 3
  113. 2 < 3
  114. 2 > 3
  115. 2 == 3
  116. 2 > 3
  117. 2 < 3
  118. 2 < 3
  119. 2 > 3
  120. 2 == 3
  121. 2 > 3
  122. 2 < 3
  123. 2 < 3
  124. 2 > 3
  125. 2 == 3
  126. 2 > 3
  127. 2 < 3
  128. 2 < 3
  129. 2 > 3
  130. 2 == 3
  131. 2 > 3
  132. 2 < 3
  133. 2 < 3
  134. 2 > 3
  135. 2 == 3
  136. 2 > 3
  137. 2 < 3
  138. 2 < 3
  139. 2 > 3
  140. 2 == 3
  141. 2 > 3
  142. 2 < 3
  143. 2 < 3
  144. 2 > 3
  145. 2 == 3
  146. 2 > 3
  147. 2 < 3
  148. 2 < 3
  149. 2 > 3
  150. 2 == 3
  151. 2 > 3
  152. 2 < 3
  153. 2 < 3
  154. 2 > 3
  155. 2 == 3
  156. 2 > 3
  157. 2 < 3
  158. def calibrate(self):
  159. for i in xrange(self.rounds):
  160. pass
  161. class CompareFloats(Test):
  162. version = 2.0
  163. operations = 30 * 5
  164. rounds = 80000
  165. def test(self):
  166. for i in xrange(self.rounds):
  167. 2.1 < 3.31
  168. 2.1 > 3.31
  169. 2.1 == 3.31
  170. 2.1 > 3.31
  171. 2.1 < 3.31
  172. 2.1 < 3.31
  173. 2.1 > 3.31
  174. 2.1 == 3.31
  175. 2.1 > 3.31
  176. 2.1 < 3.31
  177. 2.1 < 3.31
  178. 2.1 > 3.31
  179. 2.1 == 3.31
  180. 2.1 > 3.31
  181. 2.1 < 3.31
  182. 2.1 < 3.31
  183. 2.1 > 3.31
  184. 2.1 == 3.31
  185. 2.1 > 3.31
  186. 2.1 < 3.31
  187. 2.1 < 3.31
  188. 2.1 > 3.31
  189. 2.1 == 3.31
  190. 2.1 > 3.31
  191. 2.1 < 3.31
  192. 2.1 < 3.31
  193. 2.1 > 3.31
  194. 2.1 == 3.31
  195. 2.1 > 3.31
  196. 2.1 < 3.31
  197. 2.1 < 3.31
  198. 2.1 > 3.31
  199. 2.1 == 3.31
  200. 2.1 > 3.31
  201. 2.1 < 3.31
  202. 2.1 < 3.31
  203. 2.1 > 3.31
  204. 2.1 == 3.31
  205. 2.1 > 3.31
  206. 2.1 < 3.31
  207. 2.1 < 3.31
  208. 2.1 > 3.31
  209. 2.1 == 3.31
  210. 2.1 > 3.31
  211. 2.1 < 3.31
  212. 2.1 < 3.31
  213. 2.1 > 3.31
  214. 2.1 == 3.31
  215. 2.1 > 3.31
  216. 2.1 < 3.31
  217. 2.1 < 3.31
  218. 2.1 > 3.31
  219. 2.1 == 3.31
  220. 2.1 > 3.31
  221. 2.1 < 3.31
  222. 2.1 < 3.31
  223. 2.1 > 3.31
  224. 2.1 == 3.31
  225. 2.1 > 3.31
  226. 2.1 < 3.31
  227. 2.1 < 3.31
  228. 2.1 > 3.31
  229. 2.1 == 3.31
  230. 2.1 > 3.31
  231. 2.1 < 3.31
  232. 2.1 < 3.31
  233. 2.1 > 3.31
  234. 2.1 == 3.31
  235. 2.1 > 3.31
  236. 2.1 < 3.31
  237. 2.1 < 3.31
  238. 2.1 > 3.31
  239. 2.1 == 3.31
  240. 2.1 > 3.31
  241. 2.1 < 3.31
  242. 2.1 < 3.31
  243. 2.1 > 3.31
  244. 2.1 == 3.31
  245. 2.1 > 3.31
  246. 2.1 < 3.31
  247. 2.1 < 3.31
  248. 2.1 > 3.31
  249. 2.1 == 3.31
  250. 2.1 > 3.31
  251. 2.1 < 3.31
  252. 2.1 < 3.31
  253. 2.1 > 3.31
  254. 2.1 == 3.31
  255. 2.1 > 3.31
  256. 2.1 < 3.31
  257. 2.1 < 3.31
  258. 2.1 > 3.31
  259. 2.1 == 3.31
  260. 2.1 > 3.31
  261. 2.1 < 3.31
  262. 2.1 < 3.31
  263. 2.1 > 3.31
  264. 2.1 == 3.31
  265. 2.1 > 3.31
  266. 2.1 < 3.31
  267. 2.1 < 3.31
  268. 2.1 > 3.31
  269. 2.1 == 3.31
  270. 2.1 > 3.31
  271. 2.1 < 3.31
  272. 2.1 < 3.31
  273. 2.1 > 3.31
  274. 2.1 == 3.31
  275. 2.1 > 3.31
  276. 2.1 < 3.31
  277. 2.1 < 3.31
  278. 2.1 > 3.31
  279. 2.1 == 3.31
  280. 2.1 > 3.31
  281. 2.1 < 3.31
  282. 2.1 < 3.31
  283. 2.1 > 3.31
  284. 2.1 == 3.31
  285. 2.1 > 3.31
  286. 2.1 < 3.31
  287. 2.1 < 3.31
  288. 2.1 > 3.31
  289. 2.1 == 3.31
  290. 2.1 > 3.31
  291. 2.1 < 3.31
  292. 2.1 < 3.31
  293. 2.1 > 3.31
  294. 2.1 == 3.31
  295. 2.1 > 3.31
  296. 2.1 < 3.31
  297. 2.1 < 3.31
  298. 2.1 > 3.31
  299. 2.1 == 3.31
  300. 2.1 > 3.31
  301. 2.1 < 3.31
  302. 2.1 < 3.31
  303. 2.1 > 3.31
  304. 2.1 == 3.31
  305. 2.1 > 3.31
  306. 2.1 < 3.31
  307. 2.1 < 3.31
  308. 2.1 > 3.31
  309. 2.1 == 3.31
  310. 2.1 > 3.31
  311. 2.1 < 3.31
  312. 2.1 < 3.31
  313. 2.1 > 3.31
  314. 2.1 == 3.31
  315. 2.1 > 3.31
  316. 2.1 < 3.31
  317. def calibrate(self):
  318. for i in xrange(self.rounds):
  319. pass
  320. class CompareFloatsIntegers(Test):
  321. version = 2.0
  322. operations = 30 * 5
  323. rounds = 60000
  324. def test(self):
  325. for i in xrange(self.rounds):
  326. 2.1 < 4
  327. 2.1 > 4
  328. 2.1 == 4
  329. 2.1 > 4
  330. 2.1 < 4
  331. 2.1 < 4
  332. 2.1 > 4
  333. 2.1 == 4
  334. 2.1 > 4
  335. 2.1 < 4
  336. 2.1 < 4
  337. 2.1 > 4
  338. 2.1 == 4
  339. 2.1 > 4
  340. 2.1 < 4
  341. 2.1 < 4
  342. 2.1 > 4
  343. 2.1 == 4
  344. 2.1 > 4
  345. 2.1 < 4
  346. 2.1 < 4
  347. 2.1 > 4
  348. 2.1 == 4
  349. 2.1 > 4
  350. 2.1 < 4
  351. 2.1 < 4
  352. 2.1 > 4
  353. 2.1 == 4
  354. 2.1 > 4
  355. 2.1 < 4
  356. 2.1 < 4
  357. 2.1 > 4
  358. 2.1 == 4
  359. 2.1 > 4
  360. 2.1 < 4
  361. 2.1 < 4
  362. 2.1 > 4
  363. 2.1 == 4
  364. 2.1 > 4
  365. 2.1 < 4
  366. 2.1 < 4
  367. 2.1 > 4
  368. 2.1 == 4
  369. 2.1 > 4
  370. 2.1 < 4
  371. 2.1 < 4
  372. 2.1 > 4
  373. 2.1 == 4
  374. 2.1 > 4
  375. 2.1 < 4
  376. 2.1 < 4
  377. 2.1 > 4
  378. 2.1 == 4
  379. 2.1 > 4
  380. 2.1 < 4
  381. 2.1 < 4
  382. 2.1 > 4
  383. 2.1 == 4
  384. 2.1 > 4
  385. 2.1 < 4
  386. 2.1 < 4
  387. 2.1 > 4
  388. 2.1 == 4
  389. 2.1 > 4
  390. 2.1 < 4
  391. 2.1 < 4
  392. 2.1 > 4
  393. 2.1 == 4
  394. 2.1 > 4
  395. 2.1 < 4
  396. 2.1 < 4
  397. 2.1 > 4
  398. 2.1 == 4
  399. 2.1 > 4
  400. 2.1 < 4
  401. 2.1 < 4
  402. 2.1 > 4
  403. 2.1 == 4
  404. 2.1 > 4
  405. 2.1 < 4
  406. 2.1 < 4
  407. 2.1 > 4
  408. 2.1 == 4
  409. 2.1 > 4
  410. 2.1 < 4
  411. 2.1 < 4
  412. 2.1 > 4
  413. 2.1 == 4
  414. 2.1 > 4
  415. 2.1 < 4
  416. 2.1 < 4
  417. 2.1 > 4
  418. 2.1 == 4
  419. 2.1 > 4
  420. 2.1 < 4
  421. 2.1 < 4
  422. 2.1 > 4
  423. 2.1 == 4
  424. 2.1 > 4
  425. 2.1 < 4
  426. 2.1 < 4
  427. 2.1 > 4
  428. 2.1 == 4
  429. 2.1 > 4
  430. 2.1 < 4
  431. 2.1 < 4
  432. 2.1 > 4
  433. 2.1 == 4
  434. 2.1 > 4
  435. 2.1 < 4
  436. 2.1 < 4
  437. 2.1 > 4
  438. 2.1 == 4
  439. 2.1 > 4
  440. 2.1 < 4
  441. 2.1 < 4
  442. 2.1 > 4
  443. 2.1 == 4
  444. 2.1 > 4
  445. 2.1 < 4
  446. 2.1 < 4
  447. 2.1 > 4
  448. 2.1 == 4
  449. 2.1 > 4
  450. 2.1 < 4
  451. 2.1 < 4
  452. 2.1 > 4
  453. 2.1 == 4
  454. 2.1 > 4
  455. 2.1 < 4
  456. 2.1 < 4
  457. 2.1 > 4
  458. 2.1 == 4
  459. 2.1 > 4
  460. 2.1 < 4
  461. 2.1 < 4
  462. 2.1 > 4
  463. 2.1 == 4
  464. 2.1 > 4
  465. 2.1 < 4
  466. 2.1 < 4
  467. 2.1 > 4
  468. 2.1 == 4
  469. 2.1 > 4
  470. 2.1 < 4
  471. 2.1 < 4
  472. 2.1 > 4
  473. 2.1 == 4
  474. 2.1 > 4
  475. 2.1 < 4
  476. def calibrate(self):
  477. for i in xrange(self.rounds):
  478. pass
  479. class CompareLongs(Test):
  480. version = 2.0
  481. operations = 30 * 5
  482. rounds = 70000
  483. def test(self):
  484. for i in xrange(self.rounds):
  485. 1234567890L < 3456789012345L
  486. 1234567890L > 3456789012345L
  487. 1234567890L == 3456789012345L
  488. 1234567890L > 3456789012345L
  489. 1234567890L < 3456789012345L
  490. 1234567890L < 3456789012345L
  491. 1234567890L > 3456789012345L
  492. 1234567890L == 3456789012345L
  493. 1234567890L > 3456789012345L
  494. 1234567890L < 3456789012345L
  495. 1234567890L < 3456789012345L
  496. 1234567890L > 3456789012345L
  497. 1234567890L == 3456789012345L
  498. 1234567890L > 3456789012345L
  499. 1234567890L < 3456789012345L
  500. 1234567890L < 3456789012345L
  501. 1234567890L > 3456789012345L
  502. 1234567890L == 3456789012345L
  503. 1234567890L > 3456789012345L
  504. 1234567890L < 3456789012345L
  505. 1234567890L < 3456789012345L
  506. 1234567890L > 3456789012345L
  507. 1234567890L == 3456789012345L
  508. 1234567890L > 3456789012345L
  509. 1234567890L < 3456789012345L
  510. 1234567890L < 3456789012345L
  511. 1234567890L > 3456789012345L
  512. 1234567890L == 3456789012345L
  513. 1234567890L > 3456789012345L
  514. 1234567890L < 3456789012345L
  515. 1234567890L < 3456789012345L
  516. 1234567890L > 3456789012345L
  517. 1234567890L == 3456789012345L
  518. 1234567890L > 3456789012345L
  519. 1234567890L < 3456789012345L
  520. 1234567890L < 3456789012345L
  521. 1234567890L > 3456789012345L
  522. 1234567890L == 3456789012345L
  523. 1234567890L > 3456789012345L
  524. 1234567890L < 3456789012345L
  525. 1234567890L < 3456789012345L
  526. 1234567890L > 3456789012345L
  527. 1234567890L == 3456789012345L
  528. 1234567890L > 3456789012345L
  529. 1234567890L < 3456789012345L
  530. 1234567890L < 3456789012345L
  531. 1234567890L > 3456789012345L
  532. 1234567890L == 3456789012345L
  533. 1234567890L > 3456789012345L
  534. 1234567890L < 3456789012345L
  535. 1234567890L < 3456789012345L
  536. 1234567890L > 3456789012345L
  537. 1234567890L == 3456789012345L
  538. 1234567890L > 3456789012345L
  539. 1234567890L < 3456789012345L
  540. 1234567890L < 3456789012345L
  541. 1234567890L > 3456789012345L
  542. 1234567890L == 3456789012345L
  543. 1234567890L > 3456789012345L
  544. 1234567890L < 3456789012345L
  545. 1234567890L < 3456789012345L
  546. 1234567890L > 3456789012345L
  547. 1234567890L == 3456789012345L
  548. 1234567890L > 3456789012345L
  549. 1234567890L < 3456789012345L
  550. 1234567890L < 3456789012345L
  551. 1234567890L > 3456789012345L
  552. 1234567890L == 3456789012345L
  553. 1234567890L > 3456789012345L
  554. 1234567890L < 3456789012345L
  555. 1234567890L < 3456789012345L
  556. 1234567890L > 3456789012345L
  557. 1234567890L == 3456789012345L
  558. 1234567890L > 3456789012345L
  559. 1234567890L < 3456789012345L
  560. 1234567890L < 3456789012345L
  561. 1234567890L > 3456789012345L
  562. 1234567890L == 3456789012345L
  563. 1234567890L > 3456789012345L
  564. 1234567890L < 3456789012345L
  565. 1234567890L < 3456789012345L
  566. 1234567890L > 3456789012345L
  567. 1234567890L == 3456789012345L
  568. 1234567890L > 3456789012345L
  569. 1234567890L < 3456789012345L
  570. 1234567890L < 3456789012345L
  571. 1234567890L > 3456789012345L
  572. 1234567890L == 3456789012345L
  573. 1234567890L > 3456789012345L
  574. 1234567890L < 3456789012345L
  575. 1234567890L < 3456789012345L
  576. 1234567890L > 3456789012345L
  577. 1234567890L == 3456789012345L
  578. 1234567890L > 3456789012345L
  579. 1234567890L < 3456789012345L
  580. 1234567890L < 3456789012345L
  581. 1234567890L > 3456789012345L
  582. 1234567890L == 3456789012345L
  583. 1234567890L > 3456789012345L
  584. 1234567890L < 3456789012345L
  585. 1234567890L < 3456789012345L
  586. 1234567890L > 3456789012345L
  587. 1234567890L == 3456789012345L
  588. 1234567890L > 3456789012345L
  589. 1234567890L < 3456789012345L
  590. 1234567890L < 3456789012345L
  591. 1234567890L > 3456789012345L
  592. 1234567890L == 3456789012345L
  593. 1234567890L > 3456789012345L
  594. 1234567890L < 3456789012345L
  595. 1234567890L < 3456789012345L
  596. 1234567890L > 3456789012345L
  597. 1234567890L == 3456789012345L
  598. 1234567890L > 3456789012345L
  599. 1234567890L < 3456789012345L
  600. 1234567890L < 3456789012345L
  601. 1234567890L > 3456789012345L
  602. 1234567890L == 3456789012345L
  603. 1234567890L > 3456789012345L
  604. 1234567890L < 3456789012345L
  605. 1234567890L < 3456789012345L
  606. 1234567890L > 3456789012345L
  607. 1234567890L == 3456789012345L
  608. 1234567890L > 3456789012345L
  609. 1234567890L < 3456789012345L
  610. 1234567890L < 3456789012345L
  611. 1234567890L > 3456789012345L
  612. 1234567890L == 3456789012345L
  613. 1234567890L > 3456789012345L
  614. 1234567890L < 3456789012345L
  615. 1234567890L < 3456789012345L
  616. 1234567890L > 3456789012345L
  617. 1234567890L == 3456789012345L
  618. 1234567890L > 3456789012345L
  619. 1234567890L < 3456789012345L
  620. 1234567890L < 3456789012345L
  621. 1234567890L > 3456789012345L
  622. 1234567890L == 3456789012345L
  623. 1234567890L > 3456789012345L
  624. 1234567890L < 3456789012345L
  625. 1234567890L < 3456789012345L
  626. 1234567890L > 3456789012345L
  627. 1234567890L == 3456789012345L
  628. 1234567890L > 3456789012345L
  629. 1234567890L < 3456789012345L
  630. 1234567890L < 3456789012345L
  631. 1234567890L > 3456789012345L
  632. 1234567890L == 3456789012345L
  633. 1234567890L > 3456789012345L
  634. 1234567890L < 3456789012345L
  635. def calibrate(self):
  636. for i in xrange(self.rounds):
  637. pass