In this paper, we discuss software design issues related to the development of parallel computational intelligence algorithms on multi-core CPUs, using the new Java 8 functional programming features. In particular, we focus on probabilistic graphical models (PGMs) and present the parallelisation of a collection of algorithms that deal with inference and learning of PGMs from data. Namely, maximum likelihood estimation, importance sampling, and greedy search for solving combinatorial optimisation problems. Through these concrete examples, we tackle the problem of defining efficient data structures for PGMs and parallel processing of same-size batches of data sets using Java 8 features. We also provide straightforward techniques to code parallel algorithms that seamlessly exploit multi-core processors. The experimental analysis, carried out using our open source AMIDST (Analysis of MassIve Data STreams) Java toolbox, shows the merits of the proposed solutions. of using several processing cores on a chip, industry was able to multiply the computing performance of the processors while keeping the clock frequency fixed.Computational intelligence methods have been strongly influenced by the emergence of parallel computing architectures. The literature on distributed and parallel algorithms has exploded in the last years [3][4][5][6][7][8]. Consequently, computational intelligence software libraries, especially in the field of "Big data", have emerged to help developers to leverage the computational power of systems with multiple processing units [9,10]. Classic scientific programming libraries like R or Matlab have also tried to adapt to multi-core CPUs or computer clusters by providing specialised libraries [11][12][13].However, programming computational intelligence methods on parallel architectures is not an easy task yet. Apart from the latter developments, there are many other parallel programming languages such as Orca [14], Occam ABCL [15], SNOW [16], MPI [17], PARLOG [18], and Scala [19]. Nevertheless, at the time of writing, none of them seems to be widely accepted by the computational intelligence community. For example, if we take a look at some reference venues such as the JMLR Software track 1 , IEEE Fuzzy Software for Soft Computing series [20], and the Journal of Statistical Software 2 , the vast majority of the proposed software libraries do not rely on any of these parallel programming languages [?]. Moreover, only a few released libraries contain implementations of computational intelligence techniques that are able to exploit multi-core CPUs [21-24]. Enterprisesupported scientific computing libraries constitute an exception [12], because in general programming concurrent and parallel applications is tough, time consuming, error prone, and requires specific programming skills that may be beyond the expertise of C. I. researchers.The latest Java release (JDK 8.0, March 2014) is an attempt to bring a new API to code transparent and seamless parallel applications to the general public (that is, non-speci...