Skip to content
This repository was archived by the owner on Jun 15, 2021. It is now read-only.
This repository was archived by the owner on Jun 15, 2021. It is now read-only.

P100 answers are wrong about half of the time #11

@jeffhammond

Description

@jeffhammond

Is this a bug in your CoMD implementation, in CUB or somewhere else?

Software

This repo with 3c4bc9f290b7bd9d13e192a9f5a2e1519ba394b0, cub-1.6.4, and GCC 4.8.5.

Hardware

GPU 0: Tesla P100-PCIE-16GB (UUID: GPU-448db3f5-6256-eafe-698a-aeaa0452c2ff)
GPU BIOS Version : 	86.00.26.00.01
Current ECC Mode : 	Enabled
Current Persistence Mode: 	Enabled
Current Application Clock : 
        Graphics                    : 405 MHz
        SM                          : 405 MHz
        Memory                      : 715 MHz
Gpu Current Temperature : 27C
Current Cuda Version : 	8.0, V8.0.44

Input

for n in `seq 1 100` ; do ./bin/CoMD-cuda-mpi -e -x $n -y $n -z $n 2>&1 | tee eam.n$n.log ; done

Output

As you can see below, in 98 tests, I get an answer accurate to 3 decimals 50 times, an answer accurate to less than 3 decimals 9 times, and the nonsensical answer of zero 39 times.

The OpenMP reference implementation is accurate to at least three decimals for every one of these cases.

$ grep "Final energy" *log
eam.n100.log:  Final energy    : 0.000000000000
eam.n10.log:  Final energy    : 0.000000000000
eam.n11.log:  Final energy    : 0.000000000000
eam.n12.log:  Final energy    : 0.000000000000
eam.n13.log:  Final energy    : -3.335415333810
eam.n14.log:  Final energy    : -3.344402073878
eam.n15.log:  Final energy    : -3.352183853550
eam.n16.log:  Final energy    : -3.358988391471
eam.n17.log:  Final energy    : -3.364988589356
eam.n18.log:  Final energy    : -3.370319963769
eam.n19.log:  Final energy    : -3.375087496409
eam.n20.log:  Final energy    : -3.379376467145
eam.n21.log:  Final energy    : -3.383255004237
eam.n22.log:  Final energy    : -3.460504275628
eam.n23.log:  Final energy    : -3.460507369744
eam.n24.log:  Final energy    : -3.460505932912
eam.n25.log:  Final energy    : -3.460505614897
eam.n26.log:  Final energy    : -3.460507156488
eam.n27.log:  Final energy    : -3.460510956982
eam.n28.log:  Final energy    : -3.460511109727
eam.n29.log:  Final energy    : -3.460509116211
eam.n30.log:  Final energy    : -3.460509949100
eam.n31.log:  Final energy    : -3.460512404440
eam.n32.log:  Final energy    : -3.460517333917
eam.n33.log:  Final energy    : -3.460516969976
eam.n34.log:  Final energy    : -3.460523260102
eam.n35.log:  Final energy    : -3.460530043886
eam.n36.log:  Final energy    : -3.460530080663
eam.n37.log:  Final energy    : -3.460530076386
eam.n38.log:  Final energy    : -3.460530062114
eam.n39.log:  Final energy    : -3.460530062445
eam.n3.log:  Final energy    : 0.000000000000
eam.n40.log:  Final energy    : -3.460530026084
eam.n41.log:  Final energy    : -3.460530020319
eam.n42.log:  Final energy    : -3.460529998146
eam.n43.log:  Final energy    : -3.460530080067
eam.n44.log:  Final energy    : -3.460530017362
eam.n45.log:  Final energy    : -3.460530059833
eam.n46.log:  Final energy    : -3.460530050431
eam.n47.log:  Final energy    : -3.460530048647
eam.n48.log:  Final energy    : -3.460530052178
eam.n49.log:  Final energy    : -3.460530040624
eam.n4.log:  Final energy    : 0.000000000000
eam.n50.log:  Final energy    : -3.460530065898
eam.n51.log:  Final energy    : -3.460530046749
eam.n52.log:  Final energy    : 0.000000000000
eam.n53.log:  Final energy    : 0.000000000000
eam.n54.log:  Final energy    : 0.000000000000
eam.n55.log:  Final energy    : 0.000000000000
eam.n56.log:  Final energy    : 0.000000000000
eam.n57.log:  Final energy    : 0.000000000000
eam.n58.log:  Final energy    : 0.000000000000
eam.n59.log:  Final energy    : 0.000000000000
eam.n5.log:  Final energy    : 0.000000000000
eam.n60.log:  Final energy    : 0.000000000000
eam.n61.log:  Final energy    : 0.000000000000
eam.n62.log:  Final energy    : 0.000000000000
eam.n63.log:  Final energy    : 0.000000000000
eam.n64.log:  Final energy    : -3.460530071940
eam.n65.log:  Final energy    : -3.460530055180
eam.n66.log:  Final energy    : -3.460530078149
eam.n67.log:  Final energy    : -3.460530055283
eam.n68.log:  Final energy    : -3.460530090024
eam.n69.log:  Final energy    : -3.460530039012
eam.n6.log:  Final energy    : 0.000000000000
eam.n70.log:  Final energy    : -3.460530030326
eam.n71.log:  Final energy    : -3.460530063041
eam.n72.log:  Final energy    : -3.460530049675
eam.n73.log:  Final energy    : 0.000000000000
eam.n74.log:  Final energy    : 0.000000000000
eam.n75.log:  Final energy    : 0.000000000000
eam.n76.log:  Final energy    : 0.000000000000
eam.n77.log:  Final energy    : 0.000000000000
eam.n78.log:  Final energy    : 0.000000000000
eam.n79.log:  Final energy    : 0.000000000000
eam.n7.log:  Final energy    : 0.000000000000
eam.n80.log:  Final energy    : -3.460530042402
eam.n81.log:  Final energy    : -3.460530075259
eam.n82.log:  Final energy    : -3.460530037493
eam.n83.log:  Final energy    : -3.460530047495
eam.n84.log:  Final energy    : -3.460530042484
eam.n85.log:  Final energy    : -3.460530063053
eam.n86.log:  Final energy    : 0.000000000000
eam.n87.log:  Final energy    : 0.000000000000
eam.n88.log:  Final energy    : 0.000000000000
eam.n89.log:  Final energy    : 0.000000000000
eam.n8.log:  Final energy    : 0.000000000000
eam.n90.log:  Final energy    : 0.000000000000
eam.n91.log:  Final energy    : 0.000000000000
eam.n92.log:  Final energy    : -3.460530059056
eam.n93.log:  Final energy    : -3.460530073254
eam.n94.log:  Final energy    : -3.460530062317
eam.n95.log:  Final energy    : -3.460530042136
eam.n96.log:  Final energy    : -3.460530044903
eam.n97.log:  Final energy    : 0.000000000000
eam.n98.log:  Final energy    : 0.000000000000
eam.n99.log:  Final energy    : 0.000000000000
eam.n9.log:  Final energy    : 0.000000000000

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions