a few months ago I built a grid based A* system for an RTS game. I applied basic optimizations as far as using HashSets and heuristics and whatnot though pretty soon I'll be looking to optimize it further as it does tend to slow down when there's multiple units requesting pathing simultaneously.
Anyways I noticed Aron Granberg's A* system has a serialization class for graph data, and my graph is simply a 2 dimensional array of a Node class, Node() containing various data such as if it's walkable or not. I'm assuming this serialization is for saving/loading of graphs, though could I utilize serialization in some way to optimize my pathfinding further? Or perhaps there's some other optimization techniques I can begin digging into?
You are right. The Serialization is just for Loading/Saving Graphs to/from Files so you can preprocess them before runtime.
I don't know what implementation of A* you are using. But for performance optimisation you could take a look here and here