dataesr/scientific-paragraphs-categorization huggingface dataset:
Moreover, different parameters give different streams but it does not necessarily imply that the streams can be considered as independent  [4, 8] , so this independence must be tested in some way  [17, 45, 74]. Some have suggested to choose parameters at random among those that give a maximal period, but this is dangerous, because maximal period does not suffice, as we saw earlier; some parameters may still give point sets Ψ s that are far from uniform. As an example of this approach, the dynamic creator program  [55]  permits one to create dynamically new instances of good-quality MT generators. It is used in  [73]  to obtain parallel streams based on different parameterizations. SPRNG  [14, 48, 53]  also uses a parameterization approach to create new streams during execution. With counter-based RNGs from block ciphers which require an encoding key in addition to the counter, a simple and elegant parameterization is just to select a different key for each stream, among the huge set of admissible keys  [50, 59, 69, 74, 78, 80].
We think this is one of the good reasons for staying away from such large values of k. If one insists on a very large period (large k) and still wants fast jump ahead, a good way to achieve it is to use a combined generator, for which the jump ahead is done by jumping ahead for each (smaller) component separately. This is done in  [33, 41]  for various combined RNGs. For a counter-based generator with a fixed key, jumping ahead is trivial: just add ν to the counter. In most software with multiple streams, the length ν of the streams is fixed to a very large constant (e. g. , ν = 2 127 in the RngStream package of  [45] , based on MRG32k3a). If we want to allow the user to choose any ν, A ν mod m (for linear RNGs) cannot be precomputed in advance. But when streams are used for parallelization, some users may want to have the flexibility to decide on the exact length of the streams, i.
This type of splitting occurs in nuclear particle simulations in high-energy physics, where a stream is assigned to each particle, and the particles can split when they collide  [15, 53]. It occurs in a similar way in computer graphics, where the particles are replaced by rays of light, which can split when they hit a surface (some light is absorbed, some is reflected, and some may be refracted)  [80]. Relying on a central provider to manage the streams is not convenient or acceptable for these applications, at least if we insist on reproducibility, because the calls to the central manager are likely to change order across replications. The SPRNG software  [14, 53]  was designed for this type of setting. Conceptually, it contains a binary tree of distinct streams, numbered according to their position in the tree.
For example, when simulating a large service system with waiting queues, one stream can be devoted to generate the arrivals of each specific type of customer, another stream for the service times of each type, etc. , so the random numbers remain well synchronized when comparing similar systems with CRNs. These assignments and the simulation results should not depend on the hardware in any way, neither on how the tasks are assigned to threads. Passerat-Palmbach  [64]  points that out and proposes a Java class named TaskLocalRandom  [67] , based on the RngStream package of  [45] , and designed for parallel simulation programming in Java. In this class, each task is created with a unique ID number and a stream number is assigned to each ID number. Precomputed tables in global memory permit one to quickly find the seed for any stream number.
Each stream running on a single PE at a time Most of the best currently available RNGs have been designed for conventional CPUs with "standard" instruction sets and plenty of fast-access memory. To use them on a parallel computer whose PEs have these characteristics and can execute their instructions independently of each other at any given time step, it suffices to make multiple streams as explained earlier. There is no need to change their implementation. The PEs (cores) in recent multi-core CPUs and APUs share a large common fast-access memory in addition to their separate registers, so they can accommodate the same RNGs as in traditional CPUs. The hundreds of thousands of PEs in largest supercomputers today also behave much like traditional CPUs. In this type of setting, a standard multi-stream package such as RngStream can be used directly  [22].
Some available libraries. We now briefly discuss a small selection of available RNG libraries that offer multiple streams for parallel simulation, with emphasis on those that support GPUs. The CUDA programming language offered by NVIDIA for their GPUs comes with the CURAND library  [61] , which currently implements five types of RNGs: Xorwow (not recommended; see  [72] ), MRG32k3a from  [30] , MT19937 from  [54] , MTGP from  [73] , and PHILOX-4×32-10 from  [74]. Multiple streams (they are called "generators") can be created from each type, but only a limited number of them can be created. The random numbers can be generated and consumed either on the host computer or on the GPU device. For OpenCL, a more general C-like programming environment for parallel processing, but which targets primarily GPUs for general computations, the recently-proposed clRNG library  [40, 41]  offers various types of RNGs, with arbitrary numbers of streams and substreams.
In other software, such as in  [45, 33, 41] , this length is usually fixed. To provide efficient facilities to jump ahead by an arbitrary number of steps, for MGR32k3a they pre-compute and store several matrices, as explained in Section 4. For MT19937, they have groups of 224 threads working on each stream in a similar way as in  [73] , and they use the method of  [16]  to jump ahead. For MRG32k3a, each stream can run in a single thread. In speed benchmark tests, to generate 2 25 random numbers in multiple streams on GPUs with CUDA, the MRG32k3a turned out to be faster than MT19937, due to its faster jumping ahead. Their software is included in the NAG library.
Vectorized RNGs for GPUs. The following methods and software have been developed for the setting in which a CPU host uses a block of threads on a discrete GPU to produce a large array of random numbers. Saito and Matsumoto  [71, 73]  have done that for MTs. In  [71] , they propose a fast implementation of MT19937 for a specific single-instruction multiple data (SIMD) architecture that offers fast operations on 128-bit integers. The tight connection with the specific hardware is an important limitation. In  [73] , they propose a class of MTs for graphic processors (MTGP) adapted to the architecture of GPUs. It exploits the fact that their MT recurrence can be written as x i = f 0 (x i-k ,. , x i-k+r ) (5) where the RNG state at step i is written x i = (x i-k+1 ,. , x i ) and each x i is a block of 32 bits.
This is useful to produce multiple streams, with different ID numbers. However, several PEs are needed to run each stream. This RNG is intended to be called from a host CPU to obtain a large array of random numbers using a GPU device. It can also be invoked from a program running in the same block. It is available in CUDA in 32-bit and 64-bit versions. Nandapalan et al. [58]  propose parallel implementations of xorgen generators  [7] , which combine an F 2 -linear xorshift generator  [7, 62]  with an additive Weyl sequence to break the F 2 -linearity, and obtain a Crush-resistant RNG. They use a circular buffer as in  [73]. The speed on discrete GPUs is comparable to that of MTGP. Other software, such as PRAND and clRNG for example, also offer facilities to fill up an array of random numbers using several PEs in parallel on a GPU device, with one or more streams.
Acknowledgments This work has been supported by an  NSERC -Canada Discovery Grant  and a  Canada Research Chair  to the first author. It was written while the first author was at  Inria-Rennes, France , under an  Inria International Chair , and during invited visits to  Université de Savoie, in Chambéry, France , and the  University of New South Wales, in Sydney, Australia. We thank the following people for their comments and corrections:  David Hill  and  Jonathan Passerat-Palmbach  from  Blaise Pascal University in Clermont-Ferrand ;  Natarajan Bragadeesh ,  Chip Freitag ,  Ken Knox ,  Timmy Liu , and  Brian Sumner , from  Advanced Micro Devices ;  AbdelAlim Farag  and  Nabil Kemerchou  from  Université de Montréal.
Sequence data were processed and aligned to the human genome (build hg19) using the Picard (http://broadinstitute. github. io/picard/), BWA  12  , and GATK  13, 14  software packages, following best-practice pipelines. Sequencing coverage of each individual was computed based on the fraction of target bases with >20 reads aligned (exome sequencing) or average number of reads aligned across all bases genome-wide (genome sequencing). Based on these metrics, we excluded from further analysis exome sequence data (from 151 individuals) with coverage ≤20x in >20% of the target bases and genome sequence data (from 68 individuals) with average coverage ≤5x. Possible DNA contamination of sequence data was assessed using verifyBamID  15  , either by direct comparison of sequence and HumanOmni2. 5 array genotypes (where available) or by indirect estimates of contamination based on HumanOmni2.
5 array allele frequencies. DNA samples with estimated contamination >2% using either method were excluded from further analysis (data from 7 individuals in the exome sequencing dataset and 59 individuals in the genome sequencing dataset). Uncontaminated Summary of key quality control metrics for WGS and WES panels. We computed several metrics to verify the sequencing accuracy of the study individuals. (a) Estimates of sensitivity of WGS panel. Shown is the fraction of variants, as a function of minor allele count in the WGS sequenced individuals, estimated as included in the WGS panel. Green circles show the total fraction of variants; green crosses show the fraction of variants for hypothetical variants with a T2D odds ratio of 5 (because T2D cases are overrepresented in our sample, the sensitivity to detect risk variants is increased).
For comparison, shown are the fraction of variants that are included in the 1000G Phase 1 dataset (blue circles) or HapMap panel (red circles). (b) Distribution of minor alleles carried by individuals in the WES panel. For different populations within the WES panel, the distribution of minor alleles carried is plotted across all individuals. A normal distribution indicates a lack of systematic sequencing artefacts for any one individual, at least according to this metric. Afr-Am: African American. (c) Comparison of principal components computed from SNPs and indels versus indels alone. We calculated principal components for the European individuals in the WES panel using all variants in the panel and then again using only indels. Adapted from Supplementary Tables  5  and 6 , and Fig. 1a , in Fuchsberger et al.
8. DNA sample swaps were also detected via comparison of sequence and array data and corrected prior to variant calling. To identify single nucleotide variants (SNVs) from the whole-genome sequence data, we used two independent SNV calling pipelines: GotCloud  16  and the GATK UnifiedGenotyper  14. We merged unfiltered SNV calls across the two call sets and then processed the merged site list through the SVM and VQSR filtering algorithms implemented by those pipelines. SNVs that failed both filtering algorithms were excluded from further analysis. To identify SNVs from the whole-exome sequence data, we used the GATK UnifiedGenotyper best-practices pipeline  14. To identify short insertions and deletions (indels) from the whole-genome sequence data, we called variants using the GATK UnifiedGenotyper best-practices pipeline.
Among these candidate sites, we excluded variants in known immunoglobin loci to reduce the impact of possible cell-line artifacts. We did not call SVs from the whole-exome sequence data. Integrated panel generation. We merged variants discovered from the three experimental platforms into one site list. For individuals who had data from each of the three platforms, we then calculated genotype likelihoods across all sites separately by platform: for the whole-genome sequence data, we used GotCloud; for the exome sequence data, we used the GATK UnifiedGenotyper; and for the HumanOmni2. 5 data, we converted hard genotype calls into genotype likelihoods assuming a genotype error rate of 10 -6. If a site was not assayed by one of the three platforms, it was ignored in likelihood calculation for that platform.
Processing, QC, and variant calling. As for the exome sequence data within the WGS panel, sequence data for the WES panel were processed and aligned to the human genome (build hg19) using the Picard, BWA  12  , and GATK  13, 14  software packages and best-practice pipelines. Genotype likelihoods were computed controlling for contamination. Hard calls (the GATK-called genotypes but set as missing at a genotype quality [GQ] o20 threshold  14  ) and dosages (the expected value of the genotype, defined as Pr (RX|data)+2Pr(XX|data), where R is the reference and X the alternative allele) were computed for each individual at each variant site. Hard calls were used only for quality control, while dosages were used in downstream association analyses. Multi-allelic SNVs and indels were dichotomized by collapsing alternate alleles into one category.
Assaying variants in larger sample sizes Imputation from the WGS panel. We carried out genotype imputation, using existing SNP array data, from the WGS panel into 44,414 individuals (11,645 T2D cases and 32,769 controls) from 13 studies participating in the DIAGRAM consortium. Each study performed quality control independently. A more detailed description of the analyzed individuals is available elsewhere  3. Exome array genotyping from the WES panel. We considered 28,305 T2D cases and 51,549 controls from 13 studies of European ancestry, each genotyped with the Illumina exome array. Studies independently called genotypes using the Illumina GenCall algorithm (http://www. illumina. com/ Documents/products/technotes/technote_gencall_data_analysis_software. pdf ) or Birdseed  23. Individuals were excluded if they had a low call rate ( o99%), excess heterozygosity, high singleton counts, evidence of non-European ancestry, discrepancy between recorded and genotyped sex, or discordance with prior SNP array or genotyping platform fingerprint data (where available).
Association analysis WGS panel single variant analysis. For each variant in the WGS panel, we tested for association between genotype and T2D in the 2,657 sequenced individuals. We used a logistic regression framework (assuming an additive genetic model) with the Firth bias-corrected likelihood ratio test  25, 26  to test for significance. Tests were adjusted for sex, the first two PCs computed based on genotypes from the HumanOmni2. 5M array, and an indicator function for observed temporal stratification based on sequencing date and center. Analysis of imputed datasets. In each of the thirteen studies within which variants from the WGS panel were imputed, SNVs with minor allele count (MAC) ≥ 1 were tested for T2D association under an additive genetic model. Association tests were adjusted for study-specific covariates and performed using either the Firth, likelihood ratio, or score tests as implemented in EPACTS (https://genome.
Analysis of exome array datasets. In each study within which exome array genotyping was applied, variants were tested for association with T2D via both the EMMAX and Wald tests. For the Wald test, related individuals were excluded and statistics were adjusted for study-specific principal components. For each study, P-values and standard errors were corrected based on the calculated genomic control inflation factor. Variants were then combined via a fixed-effects meta-analysis. EMMAX P-values were combined via a sample-size weighted analysis, and Wald effect sizes were combined via an inverse-variant weighted analysis. For the final results, P-values were taken from the EMMAX analysis, and effect sizes were estimated from the Wald analysis. Gene-level analysis. We first generated four variant lists ('masks') based on functional annotations and observed allele frequencies.
Annotations were computed based on transcripts in ENSEMBL 66 (GRCh37. 66) using CHAoS v0. 6. 3, SnpEFF v3. 1  31  , and VEP v2. 7  32. We then identified variants predicted by at least one of the three algorithms in at least one mapped transcript to be protein-truncating ('for example, nonsense, frameshift, essential splice site), denoted PTVs, or other protein-altering (for example, missense, in-frame indel, non-essential splice site), denoted missense. We additionally used a previously described procedure  33  to identify subsets of missense variants bioinformatically predicted to be deleterious: those annotated as damaging by each of Polyphen2-HumDiv, PolyPhen2-HumVar, LRT, Mutation Taster, and SIFT were considered to meet 'strict' criteria, while those annotated as damaging by one of these algorithms was considered to meet 'broad' criteria.
We then calculated the MAF of each variant based on the highest frequency across each of the five ancestry groups. We finally combined these annotations to produce four masks: the PTV-only mask included PTVs, the PTV+NS strict mask included variants in the PTV-only mask as well as those meeting 'strict' criteria for deleteriousness, the PTV +NS broad mask included variants in the PTV-only mask as well as those with MAF o 1% meeting 'broad' criteria for deleteriousness, and the PTV+missense mask included variants in the PTV+NS broad mask as well as those with MAF o1% annotated as missense. We performed gene-level analysis using the MetaSKAT software package (v0. 32)  34 , employing the SKAT v0. 93 library to perform a SKAT-O  35  analysis within each ancestry group as well as across all ancestry groups via meta-analysis.
Data Records Genotypes and phenotypes from the WGS and WES panels are available at the European Genomephenome Archive (EGA, Data Citation 1 and Data Citation 2) and the database of Genotypes and Phenotypes (dbGAP, Data Citation 3 to Data Citation 12). The data in EGA are covered under a single data use agreement, which complies with all of the cohortspecific data use restrictions. While this does limit data access according to the criteria of the most restrictive cohort, it is the only mechanism through which the entire WES and WGS panels are available  to investigators. Additionally, the EGA contains data from one cohort that could not be released to a USbased repository. To download either the WGS or WES panel from the EGA, investigators must obtain approval from a data access committee (DAC, t2dgenes-got2d-dac@broadinstitute.
org) to analyze data from all cohorts included in the study. The requester will receive an application packet that includes a project proposal document and a Data Transfer Agreement (DTA). The requester must then provide to the DAC a short description of their study, the proposed use of the data, an approval from the Institution's IRB, and a signed DTA. Assuming IRB approval and an executed DTA, the process for obtaining final approval from the DAC takes 4-6 weeks. Once approved, investigators can download either a single VCF file with genotypes from all individuals in the WGS panel (Data Citation 1) or a single VCF file with genotypes from all individuals in the WES panel (Data Citation 2). If investigators cannot obtain approval to analyze all cohorts in the WES panel (e. g. , commercial uses) they can download cohort-specific data from dbGAP.
Each cohort in dbGAP is subject to distinct data use restrictions, and investigators can obtain separate VCF files, as well as the raw sequence reads, for each of the cohorts. The WGS and WES panels are accompanied by exclusion lists of variants and individuals (Data Citation 1 and Data Citation 2). The WGS VCF file contains data from the full set of 2,874 individuals and 28. 45M variants that passed QC, with additional lists provided containing the 2,657 individuals and 17. 69M variants included in association analysis. The WES VCF file contains the full set of 13,008 individuals that passed QC, with additional lists provided containing the 3. 04M variants that passed QC (the VCF includes a small number of variants that failed QC) and the 12,940 samples and 2. 93M variants included in association analysis.
Additionally, the WES dataset includes lists of variants included in genelevel analysis for each of the four analyzed masks. Five datasets of association statistics are also available for download. Association statistics for variants in the WGS panel are available from the whole-genome sequenced individuals or from those with imputed genotypes (Data Citation 1). Association statistics in the WES panel are available from the whole-exome sequenced individuals or from those genotyped on the exome array (Data Citation 2). Additionally, gene-level association statistics from the whole-exome sequenced individuals are available for each of the four variant masks (Data Citation 2). A description of the datasets is available in Table  7. All association statistics are also available for browsing and searching via the public Type 2 Diabetes Knowledge Portal at www.
Technical Validation Evaluation of variants in the WGS panel We evaluated the variant sensitivity (fraction of true variant sites detected) of the WGS panel, based on the 2,538 individuals with data from all three experimental platforms (low-pass whole-genome sequencing, whole-exome sequencing, and HumanOmni2. 5M array genotyping). To assess the sensitivity of low-pass whole-genome sequencing alone, we computed the fraction of variants detected from wholeexome sequencing that were also detected by low-pass whole-genome sequencing. Sensitivity estimates were 99. 8, 99. 0, and 48. 2% for common (MAF>5%), low-frequency (0. 5%o MAF o5%), and rare (MAFo0. 5%) SNVs, respectively, and >99. 9, 93. 8, and 17. 9% for common, low-frequency, and rare short indels, respectively. We also assessed the coding SNV sensitivity of low-pass whole-genome sequence data combined with exome sequence data, based on the proportion of HumanOmni2.
5 SNVs detected by either sequencing platform. Because HumanOmni2. 5 SNVs are enriched for common variants, we calculated an averaged sensitivity at each allele count, weighted by the number of exomedetected variants given the allele count. Sensitivity estimates were 99. 9, 99. 7, and 83. 9% for common, lowfrequency, and rare variants, respectively. These sensitivity estimates provide lower bounds on the sensitivity of the full WGS panel, which combines HumanOmni2. 5 SNP array data as well as the two types of sequence data (Fig. 2a ). We further evaluated the genotype accuracy of the WGS panel for each of the three classes of variant (SNVs, indels, and SVs). Across chromosome 20, concordance of low-pass whole-genome-sequencebased SNV genotypes with exome-sequence-based genotypes was 99. 86%, with homozygous reference, heterozygous, and homozygous non-reference concordances of 99.
97, 98. 34, and 99. 72%, respectively. Concordance between exome-sequence-based SNV genotypes and HumanOmni2. 5 genotypes was 99. 4%, with homozygous reference, heterozygous, and homozygous non-reference concordances of 99. 97, 99. 69, and 99. 88%, respectively. For indels genotyped with both low-pass whole-genome-sequence data and exome-sequence data, concordance was 99. 4%, with homozygous reference, heterozygous, and homozygous non-reference concordances of 99. 8, 95. 8, and 98. 6%, respectively. To evaluate the genotype accuracy of SVs detected from the low-pass whole-genome sequence data, we took advantage of the 181 individuals in our study who were previously included in the WTCCC array-CGH based structural variant detection experiment  36. Taking the WTCCC data as a gold standard, we estimated genotype accuracy across 1,047 overlapping SVs (with reciprocal overlap >0.