From e42b5701957d58e9606b231f85176f9cefd09cbc Mon Sep 17 00:00:00 2001 From: Adam Amer <136176500+adamamer20@users.noreply.github.com> Date: Tue, 16 Jul 2024 09:34:00 +0200 Subject: [PATCH] speed up mesa readme_plot script (#26) * speed up mesa, add perfplot to dev dependencies * changed to mesa's deafult random generator --- README.md | 2 +- docs/images/readme_plot.png | Bin 33121 -> 0 bytes docs/images/readme_plot_0.png | Bin 0 -> 53009 bytes docs/images/readme_plot_1.png | Bin 43003 -> 49695 bytes docs/scripts/readme_plot.py | 97 +++++++++++++++++++++++----------- pyproject.toml | 4 +- 6 files changed, 69 insertions(+), 34 deletions(-) delete mode 100644 docs/images/readme_plot.png create mode 100644 docs/images/readme_plot_0.png diff --git a/README.md b/README.md index 627302d..ce92695 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ DataFrames are optimized for simultaneous operations through [SIMD processing](h The following is a performance graph showing execution time using mesa and mesa-frames for the [Boltzmann Wealth model](https://mesa.readthedocs.io/en/stable/tutorials/intro_tutorial.html). -![Performance Graph](https://github.com/adamamer20/mesa_frames/blob/main/docs/images/readme_plot.png) +![Performance Graph](https://github.com/adamamer20/mesa_frames/blob/main/docs/images/readme_plot_0.png) ![Performance Graph without Mesa](https://github.com/adamamer20/mesa_frames/blob/main/docs/images/readme_plot_1.png) diff --git a/docs/images/readme_plot.png b/docs/images/readme_plot.png deleted file mode 100644 index 52e3de868d7845973e80ed3b4ec89889ef4bb380..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33121 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

LT)sJK=jh^j-K4o=yeLwe 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 E01G1t1ONa4 diff --git a/docs/images/readme_plot_0.png b/docs/images/readme_plot_0.png new file mode 100644 index 0000000000000000000000000000000000000000..39b920a244075b8b5911c2dc6db3b332aabeabd3 GIT binary patch literal 53009 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

l zC%y|i+~*g*5UG>!^}{=W0qn%etDXz2C4QM6xGD!0t+6Zy-MnQwaHdc5>%L?qOJ@B@ z@zh8A>|N#*F2_~gYfl|t*7F6TtTeje0%S3?AzG%@xp;i%pNO~SEb4@Q7^UHTW<1aS zG7wDRKz$wB6GwAxhyNer9#MQwuC~3~*%l|@6FszNdzN?hI5_J8T*>7jcw-eF<22AE zl(8JE_vWvb~_9=L+Qto(|ua ziJ&t@GlkQVb;;fMR5e`O!I>iO8bhR=@Ei+y*GN3KShF^}qm$_tf2k@)6r$hp@Bljl z9$35d^zMOv^5qr&tpCx9*9tZ^Htu0B-M3xUQ$yax?wmd&kYs@rF%EF)mg#=m6p zH*lA3@0{Kq5kH8cj&aZbW$aBXGTc^TK57z#B~k%q@UzAq+PduGPTRJ}_^F>B@8SEy z?#jO$?s}^=Q04NUW9SZN$6^GBf4j8?KWEOaa?r{B5=GBCJ6g^_NTX>PB!3( zlG9S78sEak9Aesn3C5lWX{V8WS&s4)F9yogdIWa&&exvWHbl-L^4+~HIqCZ%8}`l# zDwWkre%FOrn9}+=)p1j~Hn%Mm?^uSNJw>MPe{4zpEumToS4)>y|NFrV9PP$@ZJPi+ z`0w@eUxy|0?f;|iaukU)qjsOTq$DVc>6jcipeRVB$+8Qw8UPZ!2=~e7(wkxIeKhXL zltQ+_$>d-X@}h<>Jf8zcMf|qjN4(U;8|&aFBH@pUa@IL zpfqbq0ut{H1fn=L&swqS-5i}>8;-^+&cK~bOgNt~{jkee575m{M}}pLs7qS}4r*@V zm<1kyD(Wd9oJdOX0W|}xR8UnWMy69kYTi=A7x2e%OD?&fMuEb>EhUc9HQ7cWG2kll z2W*zC#jKHRhAajwJA7Jg^j*&Y*~uVR4YbPgsbv|!kKGM$Pf8-_01u>R7P~ph$rVj^_Joh_VX-HkuRzf*CJ4K(CS}d!G|QXWo_eHnx~XLi15_;6ZRQOIkt`@ZtB}y0n5amcNr?4-ej1%pr-6^wwY#u%@4~kc_ z1IwOb@ZdCFOR$40*L|h$DveG@0zMQP<(CE?nhc8C{M#pTn7$kCB<8}idm|G z_GuprJ${Bu>nDBpB{h8CpRr4z@9qQEX^z}U)qjSf>Ziqz`8ze=04(ctGaZ166h`!+ z`z|RtNd~I4h*s< zDE*=@!879F*AW z;7>sFJV!Qy*wIC#<*ub5|NRRr`l z?m5%WT4|-E7v)U|p{4rog{_*pZt;<^yzc^8gu=ejcTdLgS?f)EU%K1p{Ccv&^7~M< zf@r23sLca;vt_tpo``~{Tcyjgfi4#bbRO)+>Vn;2)l!|)N@txz$ONEVl&lv*um+z# z_IU$u{}PI-vZlA>4tx{_Za-y-QH}Xq-?%nW2lxoV)QtCUlfO(K^~tJkmeA@IX$_Ys z)wBPaobQd^Li#KJa7ykfYU&t^z5r_f*7cT{bqSOhjFDdRG;hz2;DIlfwgE1k3>FRZFh#Zs%>; z;Ra1-iD7Q6a@&d&n~VC^+Up_|D>7ZIKBS8faf-^?;s?_fo=e@iYACzpZF@5pRNOuB zbSwCK?$Ua{vyPa9(I0hXXv`RVSBY|jNV_&R+UY(P$d4k^ND({nq>L(C3NzltMO9kGODZQ)`$}x` Yo0C)TRMmLNEZ}w3^oB`=k!$S#0_Ml|&j0`b literal 0 HcmV?d00001 diff --git a/docs/images/readme_plot_1.png b/docs/images/readme_plot_1.png index 092d7f97552ff5a10a733f5e3bdbd711af8f069e..5c8ad6af79b32b5d5f26ada63e505161b504f9ab 100644 GIT binary patch literal 49695 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 literal 43003 zcmd?Rc{tQ>7&khLC42VDR%9t#sq9P(Az9L5Y#CcBW63aWH$`5 zM2)mCGRDX5k3GWdG zfk0w*wpK165cCWP1kv0f0K8Mu{bm&S&m_Vc9&tYON<@@TcmT-3Cn5|P8iBm#yB8f0 zj=B~aazxKq@2Jk+s}T`lC{um?;Q#%AUTAorzKXh9B(R83n5`QM1d{OC{s(>yE4>B+ zm0q>8I&mQy#~h7{^Z2pWz33z*)vkdQPC@KQb$jj;dNoNdz7m{lwL73D@%hT7lY5m_0UqJVz6owTap@s8B9cAu zI3ltTLyjTi2L~@%{d?^Xjc(B1tGfOAI;Q0;CAs~&d+z!Ee{V?@AGiDOvC~Np?`*$p z??cr8J(IPI|IEKeNCB7j`QCtPrOB;7#c-N2(<0QgyVYpm0)VL3ma9-jE*O@+& zF>CU`m~k4y<12yMK*u2L2t0GoaY+3j2G&qDyQ{22jdUriXg7&V+9VYcIqa1$=oP-4 zKQ!+z(sK$uI8+ok50n_-LV}zpY~An zian?lR0h>Y*FHyu#Ly2TWa<0q<_JxCJcIh0@+*>LLizZ2oWx61$VXw8oQV?rD|0U* zACL5s?vY}E)rcIUXm;r~eWW)eO3PbMK^k;LsP0sv0K$nb#Gr0iyid1CDvrJC1s#

WF>+_ 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 I(f_x91D|t5^#A|> diff --git a/docs/scripts/readme_plot.py b/docs/scripts/readme_plot.py index a2de783..f4e55b9 100644 --- a/docs/scripts/readme_plot.py +++ b/docs/scripts/readme_plot.py @@ -28,7 +28,7 @@ def __init__(self, unique_id, model): def step(self): # Verify agent has some wealth if self.wealth > 0: - other_agent = self.random.choice(self.model.schedule.agents) + other_agent = self.random.choice(self.model.agents) if other_agent is not None: other_agent.wealth += 1 self.wealth -= 1 @@ -41,19 +41,13 @@ def __init__(self, N): super().__init__() self.num_agents = N # Create scheduler and assign it to the model - self.schedule = mesa.time.RandomActivation(self) - - # Create agents - for i in range(self.num_agents): - a = MoneyAgent(i, self) - # Add the agent to the scheduler - self.schedule.add(a) + self.agents = [MoneyAgent(i, self) for i in range(self.num_agents)] def step(self): """Advance the model by one step.""" - - # The model's step will go here for now this will call the step method of each agent and print the agent's unique_id - self.schedule.step() + self.random.shuffle(self.agents) + for agent in self.agents: + agent.step() def run_model(self, n_steps) -> None: for _ in range(n_steps): @@ -176,7 +170,9 @@ def __init__(self, n: int, model: ModelDF) -> None: # 2. Adding the dataframe with add # self.add(pd.DataFrame({"unique_id": np.arange(n), "wealth": np.ones(n)})) # 3. Adding the dataframe with __iadd__ - self += pd.DataFrame({"unique_id": np.arange(n), "wealth": np.ones(n)}) + self += pd.DataFrame( + {"unique_id": np.arange(n, dtype="int64"), "wealth": np.ones(n)} + ) def step(self) -> None: # The give_money method is called @@ -212,7 +208,9 @@ class MoneyAgentPandasNative(AgentSetPandas): def __init__(self, n: int, model: ModelDF) -> None: super().__init__(model) ## Adding the agents to the agent set - self += pd.DataFrame({"unique_id": np.arange(n), "wealth": np.ones(n)}) + self += pd.DataFrame( + {"unique_id": np.arange(n, dtype="int64"), "wealth": np.ones(n)} + ) def step(self) -> None: # The give_money method is called @@ -274,33 +272,68 @@ def mesa_frames_pandas_native(n_agents: int) -> None: model.run_model(100) +def plot_and_print_benchmark(labels, kernels, n_range, title, image_path): + out = perfplot.bench( + setup=lambda n: n, + kernels=kernels, + labels=labels, + n_range=n_range, + xlabel="Number of agents", + equality_check=None, + title=title, + ) + + plt.ylabel("Execution time (s)") + out.save(image_path) + + print("\nExecution times:") + for i, label in enumerate(labels): + print(f"---------------\n{label}:") + for n, t in zip(out.n_range, out.timings_s[i]): + print(f" Number of agents: {n}, Time: {t:.2f} seconds") + print("---------------") + + def main(): sns.set_theme(style="whitegrid") - labels = [ - # "mesa", + labels_0 = [ + "mesa", "mesa-frames (pl concise)", "mesa-frames (pl native)", "mesa-frames (pd concise)", "mesa-frames (pd native)", ] - out = perfplot.bench( - setup=lambda n: n, - kernels=[ - # mesa_implementation, - mesa_frames_polars_concise, - mesa_frames_polars_native, - mesa_frames_pandas_concise, - mesa_frames_pandas_native, - ], - labels=labels, - n_range=[k for k in range(100, 10000, 1000)], - xlabel="Number of agents", - equality_check=None, - title="100 steps of the Boltzmann Wealth model:\n" + " vs ".join(labels), - ) - plt.ylabel("Execution time (s)") - out.save("docs/images/readme_plot_2.png") + kernels_0 = [ + mesa_implementation, + mesa_frames_polars_concise, + mesa_frames_polars_native, + mesa_frames_pandas_concise, + mesa_frames_pandas_native, + ] + n_range_0 = [k for k in range(0, 100001, 10000)] + title_0 = "100 steps of the Boltzmann Wealth model:\n" + " vs ".join(labels_0) + image_path_0 = "docs/images/readme_plot_0.png" + + plot_and_print_benchmark(labels_0, kernels_0, n_range_0, title_0, image_path_0) + + labels_1 = [ + "mesa-frames (pl concise)", + "mesa-frames (pl native)", + "mesa-frames (pd concise)", + "mesa-frames (pd native)", + ] + kernels_1 = [ + mesa_frames_polars_concise, + mesa_frames_polars_native, + mesa_frames_pandas_concise, + mesa_frames_pandas_native, + ] + n_range_1 = [k for k in range(100000, 1000001, 100000)] + title_1 = "100 steps of the Boltzmann Wealth model:\n" + " vs ".join(labels_1) + image_path_1 = "docs/images/readme_plot_1.png" + + plot_and_print_benchmark(labels_1, kernels_1, n_range_1, title_1, image_path_1) if __name__ == "__main__": diff --git a/pyproject.toml b/pyproject.toml index cd17c04..137e98e 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -21,10 +21,12 @@ pandas = [ "pyarrow", ] polars = [ - "polars>=1.0.0", #polars._typing (see mesa_frames.types) added in 1.0.0 + "polars>=1.0.0", #polars._typing (see mesa_frames.types_) added in 1.0.0 ] dev = [ "mesa_frames[pandas,polars]", + "perfplot", #readme_script + "seaborn", #readme_script "pytest", "pytest-cov", "typeguard",